Skip to content

Food Ordering App: πŸ”πŸ₯— Order delicious meals from multiple restaurants seamlessly! πŸ•πŸ— Explore your favorite cuisines and experience the joy of great food! 🍨

License

Notifications You must be signed in to change notification settings

iam-abin/Restaurant

Repository files navigation

Restaurant

It is a Restaurant application where users can order food from different restaurants.

prerequsties

  • Vscode
  • Nodejs v20.16.0+
  • Mongodb
  • Stripe CLI // Necessary only for development environment

Installation

  1. Clone the repository:
git clone https://github.com/iam-abin/Restaurant.git
  1. Navigate to the project directory:
cd Restaurant
  1. Install the dependencies:
  • Install all dependencies from root directory
npm run install-all

or

  • Install dependencies seperately

Install some dev dependencies in the root directory,

npm install
cd backend
npm install 
  • open another tab in vscode terminal and run
cd frontend
npm install 
  1. Setup stripe
  • Install stripe cli in local system (refer stripe website's webhook section)
  • Login to stripe cli in local system
  1. Set up the required environment variables.
  • In the frontend folder create .env file and setup variables using .env.example file.
  • In the backend folder create .env.development, .env.production, .env.test files based on need and setup variables using .env.example file.
  1. Start server (Running the app):
  • We can run all the start command from root directory using
npm run dev

or

  • In both frontend and backend terminal tabs, run
npm run dev
  • Run stript webhook (for payment confirmation) in backend terminal
npm run stripe
  1. Access the application from browser using:

For user

http://localhost:5000

For restaurant

http://localhost:5000/auth/restaurant

For admin

http://localhost:5000/auth/admin

Images

Screenshot from 2025-01-21 08-18-25

Screenshot from 2025-01-21 11-51-33

Screenshot from 2025-01-21 11-52-20

Screenshot from 2025-01-29 17-25-51

Screenshot from 2025-01-21 11-55-31

Docker compose


prerequsties

  1. docker
  2. docker componse
  3. makefile
  • For docker compose commands check Makefile

    or

  • Run the following command in the root directory of project

make

License

This project is licensed under the MIT License - see the LICENSE.md file for details.