Skip to content

This is the restaurant menu app where customer's can view restaurant menu items and reviews.

Notifications You must be signed in to change notification settings

priyaraj7/guruprasad

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

96 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GURUPRASAD - RESTAURANT MENU APP

Pandemic and the nationwide lock-down have affected the restaurant industry badly. Most of the restaurants shut down during the pandemic. I was inspired by my uncle’s hardship during the lock-down with his restaurant in India. This app is for my uncle to show how he can make use of technology and increase his businesses revenue.

GitHub Pull Request GitHub repo size GitHub contributors

Table of Contents

User Story

  • Customer can view the menu, add the item to the shopping cart, delete items from the cart.
  • Customer can contact the restaurant by filling the contact form.
  • Customer can view restaurant review.
  • Admin can login and logout
  • Admin can add, edit the menu item, toggle the status of the item.
  • Admin cam search the item according to category name and item name.
  • Admin can view and delete the messages from the customers.
  • This app is mobile and desktop friendly app.

Future Development

  • Adding more test cases.
  • Adding order table to database.
  • Customer login and logout feature.

Demo

Live Demo Link

Admin page View

Admin Page

Customer page Desktop View

Customer Page - Desktop View

Customer page Mobile View

Customer Page - Mobile View

Tools & Technology Used

  • Frontend: React, Chakra UI
  • Backend: Node.js, Express.js
  • Database: PostgreSQL
  • Testing: React Testing Library
  • APIs: Google Place API, TheMealDB, Auth0
  • Design: Figma, drawSQL

Database Diagram

dbdiagram

Database diagram

Wireframe

Project Structure - Links for files and components

CLICK HERE for Links for files and components

Client

Installation

First you need to get an Auth0 API, Google Place API key.

Clone the restaurant menu repository

git clone https://github.com/priyaraj7/guruprasad.git

Move inside the repo

cd guruprasad

Next move into the server and install dependencies

cd server
npm install
npm start

Create a .env file and enter your api-key. You can refer .env-example file.

Next restore the Postgres Database

psql postgres -f db.sql

Open another terminal then cd into the client, install dependencies

cd client
npm install

Create a .env file and enter your Auth0 credential.

Start the browser

npm start

Your browser should automatically open at http://localhost:3000.

Note: Server runs on http://localhost:4000 and client on http://localhost:3000

Acknowledgement

I'm extremely grateful to my Mentor - Chris Jaure and Techtonica team for their help on this project.

Resources

Node (Express) API: Authorization
React user Login
React Router v6
Aggregate Rows into a JSON Array Using the json_agg() Function
Adding a LEFT JOIN on a INSERT INTO....RETURNING
Git rebase --onto
Update one of the objects in array, in an immutable way

About

This is the restaurant menu app where customer's can view restaurant menu items and reviews.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages