Loading video player...
In this video, we build a complete Zomato Clone using a microservices architecture, just like real food delivery platforms. This project includes real-time order tracking, live rider navigation, role-based dashboards, sound notifications, and a scalable backend powered by RabbitMQ and Docker. 🔗 Source Code : https://www.smalltowncoder.online 🌐RabbitMQ and Aws Guide: https://drive.google.com/file/d/1zCPzq7nQPKkq2m4vseQg7CoRVw19m1Cx/view?usp=drive_link 🗺️Address Page Google Drive Link: https://drive.google.com/file/d/1jdlmcZFb9wPTVJaM0029JrkLubyeTJz9/view?usp=sharing The application supports multiple roles: • Customer • Restaurant (Seller) • Delivery Partner (Rider) • Admin (Verification & Management) The backend is divided into 6 independent microservices: • Auth Service • Restaurant Service • Rider Service • Admin Service • Realtime Service (Socket.IO) • Utils Service (File Uploads & Payments) For communication between services, RabbitMQ is used as a message broker and is deployed on AWS using Docker. Real-time features include: • Live order status updates • Real-time rider location tracking • Navigation for riders to delivery locations • Customers can track the delivery partner live on the map • Sound notifications for order received and delivery accepted Payments are handled using two gateways: • Razorpay (for Indian users) • Stripe (for global users) The entire project is dockerized and deployed: • Backend microservices on Render • Frontend on Vercel This project is perfect for developers who want to learn: • Microservices architecture in Node.js • Real-time systems using Socket.IO • Message queues using RabbitMQ • Payment gateway integration • Docker & production deployment • How apps like Zomato work internally ⏰ Timestamps 00:00:00 – 🚀 Introduction & Prerequisites 00:01:44 – How to Get the Source Code 00:03:32 – Demo 00:21:41 – Project Structure Overview 00:25:47 – Auth Service & Setting Up the Frontend 03:55:45 – Restaurant Service, Frontend & Utils Service (Upload Functionality) 09:02:48 – Adding Add-to-Cart Functionality 10:31:32 – Creating Address APIs and Page 11:05:46 – Creating Order APIs 12:07:00 – Setting Up RabbitMQ for Payments & Creating Razorpay Payment APIs 12:55:50 – Checkout Page 14:18:43 – Creating Stripe Payment API & Integrating It into the Frontend 14:46:51 – Creating Realtime Service & Showing Realtime Orders on Restaurant Dashboard 17:39:44 – Rider Service & Frontend 21:56:04 – Creating Realtime Location Tracking for User & Rider 23:02:43 – Fixing Protected Routes & Creating Admin Services 24:03:28 – 🐳 Dockerizing & Deploying the Project 🔔 If you find this video helpful, consider subscribing for more real-world full-stack projects.