Skip to content

pragyakashyap/SnapEats---A-Food-Ordering-App

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
 
 
 
 
 
 

Repository files navigation

Snap Eats

Snap Eats is a full-stack food ordering application built using the MERN stack (MongoDB, Express.js, React, Node.js). This application provides a seamless and secure platform for users to browse, order food, and manage their profiles and payment details.

Deployed Link: Snap Eats

Features

User Authentication and Authorization

  • Secure login and signup functionality using JWT (JSON Web Tokens) and Bcrypt for password hashing.

User Features

  • Address Management: Add, update, and delete addresses.
  • Payment Details: Save and manage payment information.
  • Cart Management: Add multiple items to the cart, update quantities, or remove items.
  • Profile Management: Edit personal details within the application.

Backend

  • RESTful APIs developed using Express.js to handle CRUD operations.
  • Integrated MongoDB for data storage and retrieval.

Tech Stack

Frontend

  • React.js: For building the user interface.

Backend

  • Node.js: Backend runtime environment.
  • Express.js: Framework for building the RESTful API.

Database

  • MongoDB: NoSQL database for storing application data.

Authentication

  • JWT: For secure token-based user authentication.
  • Bcrypt: For hashing user passwords.

Setup and Installation

Prerequisites

Steps to Run Locally

  1. Clone the Repository:

    git clone https://github.com/your-username/snap-eats.git
    cd snap-eats
  2. Install Dependencies: Navigate to the root folder (Frontend and Backend) and run:

    npm install
  3. Set Up Environment Variables: Create a .env file in the root directory and add:

    PORT=5000
    MONGO_URI=your_mongodb_connection_string
    JWT_SECRET=your_jwt_secret
  4. Start the Application:

    • Start the backend server:
      npm start
    • Start the React frontend move to Frontend\Food-Ordering-App:
      npm run dev
  5. Access the Application: Open your browser and navigate to http://localhost:5173.

Screenshots

Restaurant Detail Page Desktoprestaurant detail (6) Restaurant Detail Page Desktoprestaurant detail (7) Restaurant Detail Page Desktoprestaurant detail (8) Ordering Pagerestaurant detail (4) Ordering Pagerestaurant detail (5) Ordering Pagerestaurant detail (6) Ordering Pagerestaurant detail (7) Ordering Pagerestaurant detail (8)

Future Enhancements

  • Add real-time order tracking.

  • Integrate third-party payment gateways.

  • Add an admin panel for managing orders and inventory.