Skip to content

AmanBhaskar16/Food-delivery

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🌮 Foody - A Food Delivery Application

🌟 Project Overview

Foody is a full-stack food delivery web application built using the MERN stack (MongoDB, Express.js, React, Node.js).
Users can browse menus, add items to a cart, and place orders, while admins can manage the menu and track orders.


🚀 Key Features

👩‍💻 For Users

  • 🔑 User Authentication (JWT + bcrypt)
  • 📋 Menu Exploration with categories & responsive design
  • 🛒 Shopping Cart with real-time total calculation
  • 📦 Order Placement with a smooth checkout experience

🛠️ For Admins

  • 📑 Admin Panel to add, list, and remove food items
  • 📊 Order Tracking to manage customer requests

🛠️ Technology Stack

Frontend

  • ⚛️ React + Vite
  • 🛣️ React Router DOM
  • 🎨 Custom CSS
  • 🌐 Axios (API calls)
  • 🔔 React Toastify (alerts & notifications)

Backend

  • 🟢 Node.js + Express.js
  • 🍃 MongoDB + Mongoose
  • 🔑 JWT + bcrypt (authentication & security)
  • 📦 Multer (image uploads for food items)
  • 🔄 CORS
  • ⚙️ dotenv (environment management)

📂 Project Structure

Frontend (Frontend folder)


Frontend/
├── public/                # Static assets
├── src/
│   ├── assets/            # Images & data
│   ├── components/        # UI components
│   │   ├── AppDownloads/
│   │   ├── ExploreMenu/
│   │   ├── FoodDisplay/
│   │   ├── FoodItem/
│   │   ├── Footer/
│   │   ├── Header/
│   │   ├── LoginPopup/
│   │   └── Navbar/
│   ├── context/           # Global state (React Context)
│   ├── Pages/             # Main pages
│   │   ├── Cart/
│   │   ├── Home/
│   │   └── PlaceOrder/
│   ├── App.jsx
│   └── main.jsx

Admin (Admin folder)


Admin/
├── public/
├── src/
│   ├── assets/
│   ├── Components/
│   │   ├── Navbar/
│   │   └── Sidebar/
│   ├── Pages/
│   │   ├── Add/
│   │   ├── List/
│   │   └── Orders/
│   ├── App.jsx
│   └── main.jsx

Backend (Backend folder)


Backend/
├── config/        # Database connection
├── controllers/   # API logic
├── models/        # Mongoose schemas
├── routes/        # Express routes
├── uploads/       # Food images
├── .env           # Environment variables
├── server.js      # Server entry point


⚙️ Setup & Installation

🔹 Prerequisites

  • Node.js (v18 or higher)
  • MongoDB

🔹 Backend Setup

git clone <repository-url>
cd food-delivery/Backend
npm install

Create a .env file in Backend/:

PORT=4000
MONGODB_URI=mongodb+srv://<username>:<password>@cluster0.t7wzn.mongodb.net/food-del
JWT_SECRET=your_secret_key

Run backend:

npm run dev

🔹 Frontend Setup

cd ../Frontend
npm install
npm run dev

👉 App runs on http://localhost:5173


🔹 Admin Panel Setup

cd ../Admin
npm install
npm run dev

👉 Admin Panel runs on http://localhost:5174


🚀 Deployment

  • Frontend & Admin: Vercel / Netlify
  • Backend: Vercel
  • Database: MongoDB Atlas

📌 Future Enhancements

  • 💳 Online Payment Integration (Stripe/PayPal)
  • 📱 Mobile App (React Native)
  • 📍 Real-time Order Tracking (Google Maps API)
  • 🍔 Personalized Recommendations (ML-based)

👨‍🍳 Author

Aman Bhaskar

Built with ❤️ using the MERN Stack.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published