Skip to content

Kaarti22/FoodByte

Repository files navigation

FoodByte - An online food ordering website

This is a 3-level hierarchical platform where users can order food online, restaurant owners can add/update categories and menu items, manage customer orders, and admins can manage all the restaurant owners.

Skills used:

  • Next.JS
  • MongoDB
  • Cloudinary
  • Tailwind CSS
  • Stripe
  • Google OAuth

Key features of this application:

Users:

  • Login/Register using Google OAuth
  • Add food products to your cart, including varying sizes and extra ingredients if needed
  • Manage your payments through Stripe
  • Edit your profile, upload profile photos through Cloudinary

Restaurant managers:

  • Add/update/delete new food categories
  • Add details of menu items linked with each category, edit their sizes and extra ingredient options
  • Upload pictures of food items through Cloudinary
  • Manage user's orders after payment

Admins (Website maintainers):

  • Update restaurant managers role to users and vice-versa
  • Manage bestsellers items in the website
  • Add multiple login options like Facebook, Microsoft, etc.

Steps to run this project in your device:

Create an empty directory and run the following commands in the terminal:

  git clone https://github.com/Kaarti22/FoodByte.git
  cd FoodByte
  npm i

Also, create a .env file in the root directory of the project and your environment variables.
The following variables must be added:

  MONGO_URL=

  NEXTAUTH_URL= "http://localhost:3000/"
  SECRET= 
  
  GOOGLE_CLIENT_ID=
  GOOGLE_CLIENT_SECRET=
  
  NEXT_PUBLIC_CLOUDINARY_CLOUD_NAME=
  CLOUDINARY_PRESET_NAME=
  
  STRIPE_SK=
  STRIPE_PK=
  
  STRIPE_SIGN_SECRET=
  stripe_card_no=

Finally to run this project, enter the following command:

  npm run dev

Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.

You can start editing the page by modifying `app/page.jsx`. The page auto-updates as you edit the file.

This project uses [`next/font`](https://nextjs.org/docs/basic-features/font-optimization) to automatically optimize and load Inter, a custom Google Font.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published