Skip to content

Tomato is the MERN Stack-powered food delivering website that makes online food shopping easy and secure with user and admin panels, secure JWT Authentication, Stripe payments, and essential features like Login, Add to Cart, and Order Management, it's perfect for a seamless food ordering experience.

Notifications You must be signed in to change notification settings

raghabendra-dash/MERN-Food-Delivery

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

58 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TOMATO - Food Delivery Website

This repository hosts the source code for TOMATO, a dynamic food ordering website built with the MERN Stack. It offers a user-friendly platform for seamless online food ordering by utilizing local storage for managing user sessions and URL search parameters for handling payment verification and order tracking.There is an Admin panel in which admin user can add food items or remove food items on Tomato website. User also check the status of their food in MyOrders page. Clicking on the cart item will be redirected user to Stripe payment page.

Demo

Features

  • User Panel
  • Admin Panel
  • Password Hashing with Bcrypt
  • Stripe Payment Integration
  • Login/Signup
  • Logout
  • Add to Cart
  • Place Order
  • Order Management
  • Products Management

Screenshots

Hero

  • Products Section

Cart

  • Cart Page

Login

  • Login Popup

Run Locally

Clone the project

    git clone 

Go to the project directory

    cd Food-Delivery

Install dependencies (frontend)

    cd frontend
    npm install

Install dependencies (admin)

    cd admin
    npm install

Install dependencies (backend)

    cd backend
    npm install

Install dependencies (root)

    cd ..
    npm run install-all 

Setup Environment Vaiables

  JWT_SECRET=YOUR_SECRET_TEXT
  SALT=YOUR_SALT_VALUE
  MONGO_URL=YOUR_DATABASE_URL
  STRIPE_SECRET_KEY=YOUR_KEY

Setup the Frontend and Backend URL

  • App.jsx in Admin folder const url = YOUR_BACKEND_URL

  • StoreContext.js in Frontend folder const url = YOUR_BACKEND_URL

  • orderController in Backend folder const frontend_url = YOUR_FRONTEND_URL

Start the Backend server

    nodemon server.js

Start the Frontend server

    npm start

Start the Backend server

    npm start

Start all concurrently

    npm run start

Tech Stack

Deployment

The application is deployed on Vercel and Render.

Feedback

If you have any feedback, please reach out to me here

About

Tomato is the MERN Stack-powered food delivering website that makes online food shopping easy and secure with user and admin panels, secure JWT Authentication, Stripe payments, and essential features like Login, Add to Cart, and Order Management, it's perfect for a seamless food ordering experience.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published