Skip to content

This repository hosts a comprehensive Food Delivery web application developed using the MERN stack. It is designed to provide a seamless and efficient user experience, featuring secure user authentication, dynamic menu browsing, efficient order management, and a comprehensive admin dashboard for managing menu items, orders, and restaurants.

Notifications You must be signed in to change notification settings

codewithshek/Mern-Stack-Intern-EY

Repository files navigation

EY Intern Mern Stack: Building a Robust Web Application of Food Delivery

A comprehensive Food Delivery web application developed using the MERN stack, designed to provide a seamless and efficient user experience.

🖼️ Preview image

image

image

🚀 Features

  • User Authentication: Secure login and registration system.
  • Dynamic Menu: Interactive menu for users to browse and select items.
  • Order Management: Efficient system for placing and tracking orders.
  • Admin Dashboard: Comprehensive dashboard for managing menu items, orders, and restaurants.

🛠 Tech Stack

Frontend

  • HTML, CSS (Tailwind CSS), TypeScript
  • React (for building user interfaces)
  • Vite (for fast development and build tooling)

Backend

  • Node.js (Express for server-side operations)
  • MongoDB (Database for storing application data)
  • JWT (JSON Web Tokens for secure authentication)

📂 Directory Structure

github.com/codewithshek/mern-stack-intern-ey/
├── eslint.config.js
├── index.html
├── package.json
├── postcss.config.js
├── tailwind.config.js
├── tsconfig.app.json
├── tsconfig.json
├── tsconfig.node.json
├── vite.config.ts
├── server/
│   ├── index.js
│   ├── .env
│   ├── middleware/
│   │   └── auth.js
│   ├── models/
│   │   ├── MenuItem.js
│   │   ├── Order.js
│   │   ├── Restaurant.js
│   │   └── User.js
│   └── routes/
│       ├── auth.js
│       ├── menu.js
│       ├── orders.js
│       └── restaurants.js
└── src/
    ├── App.tsx
    ├── index.css
    ├── main.tsx
    ├── vite-env.d.ts
    ├── components/
    │   ├── AdminRoute.tsx
    │   ├── Footer.tsx
    │   ├── MenuItem.tsx
    │   ├── Navbar.tsx
    │   ├── ProtectedRoute.tsx
    │   └── RestaurantCard.tsx
    ├── context/
    │   ├── AuthContext.tsx
    │   └── CartContext.tsx
    ├── pages/
    │   ├── Cart.tsx
    │   ├── Checkout.tsx
    │   ├── Home.tsx
    │   ├── Login.tsx
    │   ├── MyOrders.tsx
    │   ├── NotFound.tsx
    │   ├── OrderDetails.tsx
    │   ├── OrderSuccess.tsx
    │   ├── Profile.tsx
    │   ├── Register.tsx
    │   ├── RestaurantDetails.tsx
    │   └── admin/
    │       ├── Dashboard.tsx
    │       ├── MenuItems.tsx
    │       ├── Orders.tsx
    │       └── Restaurants.tsx
    └── utils/
        └── axios.ts

📌 Setup & Installation

  1. Clone the Repository
git clone https://github.com/codewithshek/mern-stack-intern-ey.git
cd mern-stack-intern-ey
  1. Install Dependencies
npm install
  1. Run the Application
Start the frontend
npm run dev

Start the backend
npm run server
  1. Access the Application Open your browser and navigate to http://localhost:5173/ to start using the application.

📜 Key Functions

  • authenticateUser(email, password): Authenticates a user using their email and password.
  • fetchMenuItems(): Retrieves the list of menu items from the database.
  • placeOrder(orderDetails): Places a new order with the provided details.
  • getOrderStatus(orderId): Fetches the current status of an order using its ID.

💡 Future Enhancements

✅ Implement real-time order tracking.

✅ Add support for multiple payment gateways.

✅ Develop a mobile application for better accessibility.

🤝 Contributing

Feel free to fork and submit pull requests. Any contributions are welcome!


Made with ❤️ by D ABHISHEK YADAV as part of the EY Internship

About

This repository hosts a comprehensive Food Delivery web application developed using the MERN stack. It is designed to provide a seamless and efficient user experience, featuring secure user authentication, dynamic menu browsing, efficient order management, and a comprehensive admin dashboard for managing menu items, orders, and restaurants.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published