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
- Secure login and signup functionality using JWT (JSON Web Tokens) and Bcrypt for password hashing.
- 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.
- RESTful APIs developed using Express.js to handle CRUD operations.
- Integrated MongoDB for data storage and retrieval.
- React.js: For building the user interface.
- Node.js: Backend runtime environment.
- Express.js: Framework for building the RESTful API.
- MongoDB: NoSQL database for storing application data.
- JWT: For secure token-based user authentication.
- Bcrypt: For hashing user passwords.
- Node.js: Install the latest version from Node.js official website.
- MongoDB: Set up a MongoDB instance locally or use a cloud service like MongoDB Atlas.
-
Clone the Repository:
git clone https://github.com/your-username/snap-eats.git cd snap-eats
-
Install Dependencies: Navigate to the root folder (Frontend and Backend) and run:
npm install
-
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
-
Start the Application:
- Start the backend server:
npm start
- Start the React frontend move to Frontend\Food-Ordering-App:
npm run dev
- Start the backend server:
-
Access the Application: Open your browser and navigate to
http://localhost:5173
.
-
Add real-time order tracking.
-
Integrate third-party payment gateways.
-
Add an admin panel for managing orders and inventory.