A website prototype for restaurants to allow for online ordering (click & collect).
Customer side: can create an account, connect to his account, consult the available products, place the order, consult the status of the order in real time.
Restaurant side: is the administrator of the site. He/she can view the daily orders and statistics of orders received, change the details and status of an order, view the status in real time, add and modify products.
Dependencies:
- npm >= 6
- node >= 12
- mongodb >= 4
To make sure you have them available on your machine, try running the following command.
$ npm -v && node -v && mongod --version
6.14.8
v12.20.0
db version v4.2.11
Create .env
file:
PORT=5000
MONGODB_URI=*****
CORS=*****
CLOUDINARY_NAME=*****
CLOUDINARY_KEY=*****
CLOUDINARY_SECRET=ZG-*****
SENDGRID_API_KEY=SG.*****
SENDER_MAIL=*****@*****
Then execute:
npm install
npm run build
Page | URL | Description | Access |
---|---|---|---|
HOME | / | homepage | public |
SIGNUP | /signup | signup page | public |
LOGIN | /login | login page | public |
PROFILE | /profile/restaurant | restaurant profile page | registered + restaurant |
PROFILE | /profile/user | client profile page | registered + client |
PROFILE | /edit | edit profile page | registered |
ORDERS | /user/order | basket page | public |
ORDERS | /restaurant/orders/ | order list page | registered + restaurant |
ORDERS | /orders/:id | order details page | registered + client |
PRODUCTS | /products | product list page | registered + restaurant |
PRODUCTS | /products/:id | product details page | registered + restaurant |
PRODUCTS | /products/edit/:id | edit product page | registered + restaurant |
client