Safar One
Keeping a city connected.


The challenge
Passengers, drivers, couriers, and restaurants need different workflows, but every order depends on the same accurate, real-time state.
How I approached it
Built a shared Flutter application with BLoC, Google Maps, and a bidirectional Socket.io backend. Separated dispatch, location updates, and role-specific interfaces so the system could evolve without duplicating the product.
What came out of it
A taxi and delivery platform published to the App Store and Google Play.
How the pieces connect
01Flutter client
02Socket.io
03Dispatch API
04Prisma / DB
Live driver tracking and animated routes
Passenger, driver, courier, and restaurant workflows
Location sharing, ride requests, and delivery orders


Next destination