Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/bhavnesh7781/Food-Delivery-App/llms.txt

Use this file to discover all available pages before exploring further.

Food Delivery App is an end-to-end online ordering platform built with React, Node.js, Express, and MongoDB. Customers can browse a categorized menu, manage their cart, pay securely with Stripe, and track their orders — while admins have a dedicated dashboard to manage the menu and fulfil orders.

Quickstart

Get the full stack running locally in under 10 minutes.

Project Structure

Understand how the frontend, admin, and backend are organized.

API Reference

Explore every REST endpoint with request and response details.

Configuration

Set up your environment variables, database, and Stripe keys.

Platform Overview

Food Delivery App is composed of three applications that work together:

Customer Frontend

A React + Vite storefront where customers browse the menu, manage their cart, and place orders.

Admin Dashboard

A separate React app for restaurant staff to manage menu items and process incoming orders.

REST API

An Express.js backend exposing authenticated endpoints for food, cart, and order operations.

Key Features

Food Menu & Categories

Browse and filter items across eight categories including Salad, Rolls, Pasta, and more.

Cart & Checkout

Persistent cart backed by MongoDB — cart state is preserved across sessions.

Stripe Payments

Secure checkout powered by Stripe. Payments are verified server-side before orders are confirmed.

Order Tracking

Customers can track order status from “Food Processing” through “Out for Delivery” to “Delivered”.

Getting Started

1

Clone the repository

Clone the project and navigate into the root directory.
git clone https://github.com/bhavnesh7781/Food-Delivery-App.git
cd Food-Delivery-App
2

Configure environment variables

Create a .env file in the backend/ directory with your MongoDB URI, JWT secret, and Stripe keys. See Environment Variables for the full reference.
3

Start the backend

Install dependencies and start the Express server on port 4000.
cd backend && npm install && npm run server
4

Start the frontend and admin apps

Open two additional terminals and start each Vite dev server.
# Terminal 2 — customer frontend
cd frontend && npm install && npm run dev

# Terminal 3 — admin dashboard
cd admin && npm install && npm run dev
The backend defaults to port 4000. The frontend and admin apps each start on their own Vite-assigned ports (typically 5173 and 5174). Make sure all three services are running simultaneously for the full experience.

Build docs developers (and LLMs) love