A food ordering experience for a single restaurant. Hungry clients of this fictitious restaurant can visit its website, select one or more dishes and place an order for pick-up. They will receive a notification when their order is ready.
- HTML, SASS, jQuery and AJAX on the front end
- Node, Express, EJS, PSQL on the server-side
- see the menu items online
- make selection by adding dishes to their cart
- review their order details and total
- modify their order before submitting
- place orders and see online confirmation
- receive a notification when their order is ready
- receive a notification when new orders are placed
- provide pickup time
Customers and Restaurant requirements converted to app features
PSQL database tables design
- Node 10.x or above
- NPM 5.x or above
- PG 6.x and pg-native
- Express
- Body-parser
- Chalk
- Dotenv
- EJS
- Morgan
- Node-sass-middleware
- Twilio (trial version of telecomm API service is used to implement SMS communication from the website to the client and restaurant).
- Nodemon (or Live-server)
- Create the
.env
by using.env.example
as a reference:cp .env.example .env
- Update the .env file with your correct local information (username:
labber
; password:labber
; database:midterm
) - Install dependencies:
npm i
- Fix to binaries for sass:
npm rebuild node-sass
- Reset database:
npm run db:reset
(check the db folder to see what gets created and seeded in the SDB) - Run the server:
npm run local
(note: nodemon is used, so you should not have to restart your server) - Visit
http://localhost:8080/