iGourmet
Restaurant discovery and food delivery app connecting diners with local restaurants through curated cuisine guides and real-time order tracking.
The Challenge
Designing a real-time order management system that coordinates between customers, restaurants, and delivery drivers while maintaining accurate ETAs and order state across all parties.
The Solution
Implemented a WebSocket-based event system with MongoDB change streams to propagate order state changes instantly, backed by a geospatial driver-matching algorithm that minimises delivery time.
iGourmet is a cross-platform mobile app that reimagines food discovery and delivery for urban diners. Unlike generic delivery platforms, iGourmet leads with editorial content — curated cuisine guides, chef spotlights, and neighbourhood food maps — creating a discovery experience before the transaction. Once a user finds a restaurant they love, ordering and payment happen within the same seamless flow.
Challenge
The biggest technical challenge was building reliable real-time coordination across three distinct user types — customers tracking their orders, restaurant staff managing kitchen queues, and drivers navigating to pickups and drop-offs. Each party needs a different view of the same underlying order state, and any lag or inconsistency erodes trust in the platform. Stripe’s payment lifecycle also had to be tightly integrated with order confirmation to prevent orders from being accepted before payment was secured.
Solution
The backend is a Node.js API backed by MongoDB with change streams feeding a WebSocket layer. When an order changes state — accepted, preparing, ready for pickup, out for delivery — all connected clients receive the update within milliseconds. Driver location is polled every 10 seconds and interpolated on the client for smooth map animations. Stripe PaymentIntents are created at cart review and captured only after the restaurant confirms availability, preventing failed transactions from frustrating customers.
Key Features
- Editorial-first discovery with curated cuisine guides and chef profiles
- Real-time order tracking with live driver location on an interactive map
- Multi-restaurant cart support with smart conflict detection
- Stripe-powered payments with Apple Pay and Google Pay support
- Push notifications for order milestones and promotional offers
- Restaurant partner dashboard for menu management and order fulfilment
- Rating and review system with photo upload for dishes