Ride-hailing platform
Driver GPS over WebSockets into a geo index, ETA-based matching, surge pricing, and Kafka-driven payments and notifications.
Offered as a template
In this diagram
- Ride-hailing platform
- Live driver locations, matching, pricing and payments
- Apps
- Driver app
- Rider app
- Edge
- Realtime gateway
- WebSockets
- API gateway
- auth · rate limit
- Services
- Location
- H3 cells
- Trip service
- state machine
- Matching
- rank by ETA
- Pricing
- fare + surge
- Kafka
- trip events
- Payments
- Notifications
- push · SMS
- Data
- Redis geo index
- Postgres trips
- Payment provider
- How a match happens
- look up drivers in nearby H3 cells
- rank by ETA, not distance
- offer to one driver, 15 s to accept
- no answer: next driver in the list
- Key
- mint Apps
- sky Edge & external
- lilac Core services
- peach Async consumers
- sand Storage
- dashed Async / push
- arrow Request flow
- GPS pings never touch the REST API: they stream over WebSockets
- GPS every 4 s
- update cell
- request ride
- save
- find driver
- nearest drivers
- quote
- completed
- charge card
- live trip updates