Caravan
A group road-trip app for friends converging from different cities — plan stops together, track everyone live on a map, split shared costs down to the last rupee, and relive the trip afterward in one shared photo timeline.
Numbers that moved
The challenge
Group road trips fall apart in the coordination, not the destination: five people leaving from five different cities, a shared spreadsheet for expenses nobody updates, and a group chat that can't show you where anyone actually is.
The product bet behind Caravan was that a single app — live map, shared planning, and expense splitting in one place — could replace that whole stack of spreadsheets, chat threads, and guesswork.
Our approach
We built the backend and app in parallel — Flutter with Riverpod on the client, Express, Prisma, Redis, and Socket.IO on the server — so live features like the map and chat were real from the first internal build, not bolted on after.
A deliberate engineering principle ran through the whole build: no screen fakes a number it can't back up. Where a feature isn't fully wired yet — like in-app payments — the UI says so honestly instead of pretending.
What we built
Fifteen feature areas across the app: trip creation and planning with collaborative stop-picking, a live map showing everyone's location converging on the destination, an AI trip copilot for finding stops and adjusting schedules, and 'Convoy Talk' for on-the-road group callouts.
The expense-splitting ledger computes a real, debt-minimized settle-up on the server — not a spreadsheet formula copied into the app. And a shared 'Memories' timeline turns the trip's photos into a recap once everyone's home.
What we used
Related work
Building a real-time, location-aware app?
We design live map, socket, and ledger systems that are upfront about what's real and what's still a preview.



