The idea
Most delivery apps are really restaurant marketplaces with delivery bolted on. SwiftDrop deliberately isn't. It does two things: move a parcel from A to B, or send a rider to buy something and bring it to you. That second one — "buy me anything" — is the errand people in Accra actually run all day, and almost nothing serves it properly.
The customer side
- Two entry points, not a menu — "Send a package" or "Buy me something", chosen on the home screen before anything else is asked.
- Map-based pickup and drop-off — tap the map to set the pickup point rather than fighting with an address field, which matters in a city where a lot of places don't have a clean postal address.
- Package size and rider notes — small / medium / large with real examples, plus a free-text note ("call when you reach the gate").
- Distance-based pricing shown upfront, so the price isn't a surprise at handover.
- Live tracking of the rider on the map once the job is accepted.
The rider side
A delivery app is two apps. Rider mode turns the same install into the earning side: accept jobs, run them, get paid. Because riders handle other people's property and money, that side carries the checks:
- Identity verification built to be KYC-ready before a rider can take live jobs.
- Code-verified handover — the drop-off is confirmed with a code, so "delivered" means the recipient actually received it.
- An admin dashboard for oversight of orders and riders.
Under the hood
- React Native on Expo, so one codebase serves Android and iOS — with Android first, because that's the market.
- Supabase for accounts and cloud-synced orders, so a customer's history follows them across devices.
- Row-Level Security, so one customer can never read another's orders and a rider only sees the jobs they're entitled to — enforced by the database, not by the screen.
- Optional accounts — you can look around before signing up, and sign in when you want your orders synced.
What this one proves
Two-sided products are where most side projects fall over: it's twice the surface, twice the permissions, and the two sides have to agree about the state of the same job in real time. SwiftDrop is that shape — maps, live state, roles, verification — built and running as a real app rather than a prototype screen.