Skip to content

Developer-Deepak02/BiteRush

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

62 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ” BiteRush

A Modern Full-Stack Food Ordering Platform

Next.js Node.js MongoDB TypeScript TailwindCSS

A complete food ordering experience β€” from browsing to delivery, all in one place.


πŸ“Œ Overview

BiteRush is a production-ready, full-stack food ordering web application that delivers a seamless experience for both customers and administrators. Built with a modern tech stack, it supports everything from JWT-secured authentication to real-time order tracking and detailed revenue analytics.


✨ Features

πŸ‘€ User Experience

Feature Description
πŸ” Authentication Secure JWT-based Registration & Login with protected routes
🍽️ Menu Browsing Browse food items with category filtering
πŸ›’ Cart Management Add items, manage quantities, and place orders
πŸ“¦ Order Tracking Animated real-time order status timeline
πŸ” Reorder Quickly reorder from previous orders
πŸ’³ Payments COD & Razorpay payment gateway support
πŸ“± Responsive UI Fully optimized for Desktop, Tablet & Mobile

πŸ› οΈ Admin Dashboard

Feature Description
πŸ“Š Analytics Revenue & order analytics with weekly growth tracking
πŸ“ˆ Charts Interactive revenue and order trend charts
πŸ” Menu Management Add, edit, and manage food items & categories
πŸ“‹ Order Management View, update, and manage all customer orders
πŸ‘₯ User Management View and manage registered users
🎟️ Coupon Management Create and manage discount coupons
πŸ† Top Products Insights on best-selling items

🧰 Tech Stack

Frontend

Technology Purpose
Next.js 15 React framework with SSR & routing
TypeScript Type-safe development
Tailwind CSS Utility-first responsive styling
Zustand Lightweight global state management
Recharts Beautiful, composable analytics charts
Lucide React Clean and consistent icon set
Sonner Toast Elegant notification toasts

Backend

Technology Purpose
Node.js JavaScript runtime environment
Express.js Fast, minimal web framework
MongoDB NoSQL document database
Mongoose MongoDB ODM for schema modeling
JWT Secure token-based authentication
bcrypt.js Password hashing & security

πŸ“‚ Project Structure

BiteRush/
β”‚
β”œβ”€β”€ client/                     # Next.js Frontend
β”‚   └── src/
β”‚       β”œβ”€β”€ app/                # App Router pages
β”‚       β”œβ”€β”€ components/         # Reusable UI components
β”‚       β”œβ”€β”€ store/              # Zustand state management
β”‚       β”œβ”€β”€ features/           # Feature-specific modules
β”‚       └── providers/          # Context & layout providers
β”‚
β”œβ”€β”€ server/                     # Express.js Backend
β”‚   β”œβ”€β”€ controllers/            # Route handler logic
β”‚   β”œβ”€β”€ models/                 # Mongoose data models
β”‚   β”œβ”€β”€ middleware/             # Auth & error middleware
β”‚   β”œβ”€β”€ routes/                 # API route definitions
β”‚   └── config/                 # DB & environment config
β”‚
└── README.md

βš™οΈ Getting Started

Prerequisites

  • Node.js v18+
  • MongoDB instance (local or Atlas)
  • Razorpay account (for payment integration)

1️⃣ Clone the Repository

git clone https://github.com/Developer-Deepak02/BiteRush.git
cd biterush

2️⃣ Setup the Frontend

cd client
npm install

3️⃣ Setup the Backend

cd ../server
npm install

4️⃣ Configure Environment Variables

Create a .env file inside the server/ directory:

PORT=5000
MONGO_URI=your_mongodb_connection_string
JWT_SECRET=your_jwt_secret
RAZORPAY_KEY_ID=your_razorpay_key
RAZORPAY_KEY_SECRET=your_razorpay_secret

5️⃣ Run the Application

Backend:

cd server
npm run dev

Frontend:

cd client
npm run dev

The app will be available at http://localhost:3000


🌐 API Reference

πŸ” Authentication

Method Endpoint Description
POST /api/auth/register Register a new user
POST /api/auth/login Login and receive JWT

πŸ” Menu

Method Endpoint Description
GET /api/menu Fetch all menu items
POST /api/menu Add a new menu item (Admin)

πŸ“¦ Orders

Method Endpoint Description
POST /api/orders Place a new order
GET /api/orders/my Get current user's orders

πŸ› οΈ Admin

Method Endpoint Description
GET /api/admin/dashboard Get analytics overview
GET /api/admin/orders Get all orders
PUT /api/admin/orders/:id Update order status

πŸ“Š Admin Analytics

The dashboard provides comprehensive business insights:

  • πŸ’° Total Revenue β€” Overall earnings at a glance
  • πŸ“¦ Total Orders β€” Volume tracking across all time
  • πŸ“ˆ Revenue Growth β€” Weekly revenue trend charts
  • πŸ“‰ Order Growth β€” Weekly order volume charts
  • πŸ† Top Selling Products β€” Best-performing menu items
  • πŸ• Recent Orders β€” Live feed of latest activity
  • πŸ”„ Order Status Counts β€” Breakdown by current status

πŸ” Security

  • JWT Authentication β€” Stateless, token-based auth
  • Role-Based Authorization β€” Separate user & admin access
  • Protected Routes β€” Server and client-side route guards
  • Password Hashing β€” Secure storage using bcrypt

πŸš€ Future scope

  • πŸ—ΊοΈ Live Delivery Tracking
  • πŸ”” Push Notifications
  • πŸ€– AI-Powered Food Recommendations
  • πŸͺ Multi-Restaurant Support
  • πŸ“² Progressive Web App (PWA)
  • 🧾 Invoice Generation

πŸŽ“ Academic Context

This project was developed as an MCA Major Project, demonstrating proficiency in:

  • Full Stack Web Development
  • RESTful API Design
  • Authentication & Authorization
  • Database Modeling & Management
  • Admin Analytics & Data Visualization
  • Modern UI/UX Practices

πŸ‘¨β€πŸ’» Author

Deepak Sharma MCA Student Β· Full Stack Web Developer


⭐ Closing Note

BiteRush is more than a class project β€” it's a real-world-ready food ordering platform that demonstrates how modern tools and thoughtful architecture come together to create something genuinely useful. Feel free to fork, contribute, or reach out!

If you found this project helpful, consider giving it a ⭐ on GitHub!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors