https://restaurant-reserves-client.herokuapp.com/dashboard
- ReactJS
- CSS
- JSX
- Postgres (knex)
- NodeJS
- Express
Periodic Tables is a restaurant schedule management application that allows a restaurant manager to create/document tables and reservations. It provides the ability to filter reservations by phone number, sort reservations by those that are booked, seated, and completed.
Users can also create tables and assign capacity to reflect the tables in the restaurant.
cd
intoThinkful/front-end
- run
npm install
- run
npm start
to start the application
- run
cd
intoThinkful/back-end
- run
npm install
- run
npm run reset
to rollback, migrate and seed the database - run
npm start
to start the application
- run
Creating a reservations is done by clicking 'New Reservation' on the navigation bar. This requires the customer's first name, last name, reservation date, reservation time, quantity of guests, and phone number.
Managing reservations can be done via the dashboard.
The dashboard by default will list the reservations for today. Use the previous and next buttons on the top right of the reservations table to look at reservations in the past or future.
The tables and their availability are listed in the list on the on the far right of the page.
Users can search for a particular reservation by the mobile number associated with the reservation. This can be done by clicking the 'Search' option in the left-hand navigation.
Expanding the restaurant? Create new tables by selecting the 'New Table' option in the left-hand navigation.
POST /reservations
- Required body:
Param type first_name
str
last_name
str
party
int
reservation_date
date
reservation_time
str
mobile_number
str
GET /reservations?date=<reservation_date>
Returns reservations for a particular date
/reservations/:reservation_id
- GET - Returns a reservation given an existing reservation Id
- PUT - Modifies an existing reservation given an existing reservation Id
- Required params:
reservation_id (int)
- Required body:
Param type first_name
str
last_name
str
party
int
reservation_date
date
reservation_time
str
mobile_number
str
- Required params:
GET /reservations/:reservation_id/status
Returns a status of [ booked, seated, finished, cancelled
] for the particular reservation
- GET
/tables
Returns the available tables.
- POST
/tables
Creates a table to be listed in the table list.
- Required body:
Param type table_name
str
capacity
int
- PUT
/tables/:table_id/seat
Sets table status to 'occupied' and ties a restaurant_id
to it.
- Required body:
Param type reservation_id
int
- DELETE
/tables/:table_id/seat
Sets the table status to free
and the accompanying reservation status to finished
- Required body:
Param type reservation_id
int