Skip to content

Reservation Management App: HTML, CSS, JS, React, Express, Knex, PostgreSQL. API with endpoints for reservations and tables. Features dashboard, search, reservation creation, table creation, seating, finishing, editing, and cancellation. Installation instructions included.

Notifications You must be signed in to change notification settings

calebfreed/Periodic-Tables-Full-Stack-Project

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

68 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Thinkful Capstone: Restaurant Reservation

Live app is available here: https://restaurant-reservation-xs01.onrender.com/dashboard

A full-stack app built using:

  • HTML
  • CSS
  • JavaScript
  • React
  • Express
  • Knex
  • PostgreSQL API

Available API Endpoints

URL Method Description
/reservations?date=YYYY-MM-DD GET Lists all reservations for the date specified
/reservations?mobile_number=999-999-9999 GET Lists all reservations for the phone number specified
/reservations POST Creates a new reservation
/reservations/:reservationId GET Reads a reservation by reservation_id
/reservations/:reservationId PUT Updates a reservation by reservation_id
/reservations/:reservationId/status PUT Updates the status of a reservation by reservation_id
/tables GET Lists all tables
/tables POST Creates a new table
/tables/:table_id/seat PUT Seats a reservation at a table
/tables/:table_id/seat DELETE Finishes an occupied table

App Functionality

Dashboard

  • Defaults to displaying a list of booked (or seated) reservations for the current date.
  • Navigation buttons: Previous, Today, & Next are available for changing the date displayed by the dashboard.
  • All tables are also diplayed here.

Menu

The menu provides options to:

  1. Search for a reservation

  2. Create a new reservation

  3. Create a new table

  4. Return to the dashboard


Search

  1. Enter the phone number for the reservation.
  2. Click find.

New Reservation

  1. Fill out the form with the reservation information.
  2. Click submit.

New Table

  1. Fill out the form with the table information.
  2. Click submit.

Seating a Reservation

  1. Click seat on the reservation you'd like to seat.
  2. Select a table from the drop-down menu.
  3. Click submit to seat the reservation at the selected table.

Finishing a Reservation

  1. Click finish on the table that has finished.
  2. Click OK on the confirmation window that pops-up.

Editing a Reservation

  1. Click edit on the reservation you'd like to edit.
  2. Edit any of the reservation information as needed.
  3. Click submit to save the updated reservation information.

Cancelling a Reservation

  1. Click cancel on the reservation you'd like to cancel.
  2. Click OK on the confirmation window that pops-up.

Installation

  1. Fork and clone this repository.
  2. Run cp ./back-end/.env.sample ./back-end/.env.
  3. Update the ./back-end/.env file with the connection URL's to your database instance.
  4. Run cp ./front-end/.env.sample ./front-end/.env.
  5. Include your backend connection within ./front-end/.env (defaults to http://localhost:5000).
  6. Run npm install to install project dependencies.
  7. Run npm run start to start the server.

If you have trouble getting the server to run, reach out for assistance.

About

Reservation Management App: HTML, CSS, JS, React, Express, Knex, PostgreSQL. API with endpoints for reservations and tables. Features dashboard, search, reservation creation, table creation, seating, finishing, editing, and cancellation. Installation instructions included.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 98.2%
  • HTML 1.6%
  • CSS 0.2%