A full-stack MERN Pizza-Food Ordering App — where users can order pizzas online, make secure payments, and admins can manage the entire system.
Built with ❤️ by Vimal Kumar Chaudhary.
- Demo
- Screenshots
- Features
- Tech Stack
- Architecture
- Installation
- Usage
- Folder Structure
- Contributing
- License
| Home Page |
|---|
![]() |
| Pizza Menu |
|---|
![]() |
![]() |
![]() |
| Cart Page |
|---|
![]() |
| All Orders |
|---|
![]() |
| Single Page |
|---|
![]() |
| Status |
|---|
![]() |
| Admin Dashboard |
|---|
![]() |
| Footer |
|---|
![]() |
- 🔐 JWT Authentication (Access + Refresh Token)
- 🧠 Redux Toolkit for global state management
- ⚙️ Automatic Token Refresh for seamless sessions
- 🧾 Admin Panel – Manage users, pizzas, orders
- 🛒 Cart Functionality with dynamic price updates
- 💳 Stripe Payment Gateway Integration
- 🧾 Order Tracking (Real-time Status)
- 📱 Fully Responsive Design
- ☁️ Secure Node.js + Express Backend
- 🧑🍳 CRUD APIs for pizzas & orders
- 🌐 MongoDB Database with Mongoose
| Layer | Technology |
|---|---|
| Frontend | React.js, Redux Toolkit, React Router |
| Styling | CSS / Tailwind CSS |
| Backend | Node.js, Express |
| Database | MongoDB (Mongoose ODM) |
| Auth | JWT (Access + Refresh Tokens), bcrypt, Joi |
| Payment | Stripe |
| Others | dotenv, CORS, Error Handling Middleware |
Frontend (React + Redux)
|
|-- Fetch API requests
v
Backend (Express Server)
|
|-- Auth Routes (/register, /login, /refresh)
|-- Order Routes (/orders)
|-- Pizza Routes (/pizzas)
|
v
MongoDB (Mongoose Models)
git clone https://github.com/Munchunnce/pizza-online-food-vkc.git
cd pizza-online-food-vkccd backend
npm installCreate a .env file in /backend:
PORT=5000
MONGO_URI=your_mongodb_connection_string
JWT_SECRET=your_access_secret
REFRESH_SECRET=your_refresh_secret
STRIPE_SECRET_KEY=your_stripe_secret_keyRun the server:
npm run devcd frontend
npm installCreate .env in /frontend:
REACT_APP_API_URL=http://localhost:5000
REACT_APP_STRIPE_PUBLIC_KEY=your_stripe_public_keyRun the app:
npm start- Register or Login
- Browse pizzas and add to cart
- Proceed to checkout
- Pay using Stripe (test card:
4242 4242 4242 4242) - View your order status
- Admins can view/manage all orders
pizza-online-food-vkc/
├── backend/
│ ├── controllers/
│ ├── models/
│ ├── routes/
│ ├── middlewares/
│ ├── services/
│ ├── app.js
│ └── .env
│
├── frontend/
│ ├── src/
│ │ ├── components/
│ │ ├── pages/
│ │ ├── store/
│ │ ├── api/
│ │ └── App.js
│ ├── public/
│ ├── screenshots/
│ └── .env
│
└── README.md
Contributions are always welcome! Just fork the repo and open a pull request.
This project is licensed under the MIT License — see LICENSE.
👨💻 Developed by Vimal Kumar Chaudhary
Email: vimalkumarak478@gmail.com









