This bootcamp project is a flight booking application where a user can see seat availability for a flight, be able to book a seat on the flight, and review/delete their reservation. I also added an admin page as a stretch goal, where the admin can see all current reservations made within the app. The project taught me a lot about server-side programming, specifically developing RESTful server endpoints, database integration with MongoDB, and data persistence.
Users can select a flight from a dropdown. With the flight number, a server request is made for the seating availability on that flight. When the response with seating is received, the seating input is displayed.
When the user selects a seat, fills out the necessary form inputs, and clicks 'Confirm', the user will be redirected to the confirmation page that displays the info they entered on the previous screen in addition to a reservation id. Data persistence is present so that a booked seat will no longer be available to anyone for that flight.
The reservation button only appears once a reservation has been made and shows the last reservation booked. The interface also allows users to cancel their reservation, in which the associated seat will be made available
An admin interface is available to view all of the reservations.
Clone the repository to your local machine using the terminal:
$ git clone git@github.com:steven94le/slingair-project.git
- Navigate to the frontend folder
cd frontend
- Install the required packages
yarn install
- Once that's done you can start the server with
yarn dev:frontend
This will run the app in development mode. Open http://localhost:3000 to view it in the browser! The page will reload if you make changes.
- Navigate to the backend folder
cd backend
- Install the required packages
yarn install
- Once that's done you can start the server with
yarn start
Frontend:
- JavaScript, HTML, CSS
- React.js
- Styled Components
Backend:
- Node.js
- Express
Other Tools:
- GitHub
- Git
- MongoDB
- Steven Le (GitHub: @steven94le)