Periodic Tables is a restaurant reservation system designed to manage reservations and table assignments for fine dining restaurants. Users can create, update, and cancel reservations, as well as assign reservations to tables. The application ensures that reservation times and dates are validated for availability and correctness.
- Create, update, and cancel reservations
- Assign reservations to tables
- Validate reservation times and dates
- Search for reservations by phone number
For detailed API documentation, please refer to the respective backend and frontend README files:
- Frontend: React, CSS
- Backend: Node.js, Express.js, Knex.js
- Database: PostgreSQL
- Deployment: Render
- Clone the repository:
git clone https://github.com/loganprit/periodic-tables/tree/main
- Navigate to the backend directory:
cd back-end
- Install dependencies:
npm install
- Set up environment variables in a
.env
file (use.env.sample
as a reference) - Run the migrations:
knex migrate:latest
- Seed the database:
knex seed:run
- Navigate to the frontend directory:
cd front-end
- Install dependencies:
npm install
- Start the application from the home directory:
npm start
- Future improvements include implementing smooth transition animations between pages, skeleton loading and the ability to search by last name.
- Credits to the Thinkful team for guidance and support.