This project was a solo project during Module 2 at Turing School of Software & Design.
For this project, I was tasked with building a resort management tool (Riverside Resort) for customers and management to manage room bookings and determine total amounts spent/revenue generated at the resort.
All users arrive at the same login page, and based on their login credentials, they are either taken to the manager page view or the customer page view.
Managers are able to view the resort's availability for the day, the day's revenue, and the percentage of rooms occupied for the day. Additionally, they are able to select a loyal customer and make any necessary cancellations on their behalf, or book a same day reservation.
Customers are able to view their past reservations, upcoming reservations, and the total amount they've spent at the resort. Customers are also able to make a reservation and search for rooms available based on their date and room type preference.
Both users are able to logout and be taken back to the initial login screen.
-
Fork this repository.
-
Clone your forked repository.
-
Change into the directory and install the project dependencies by running
npm install
-
Check that it is setup correctly by entering
run npm test
in your terminal. All tests should be passing. -
In your terminal, run
npm start
and then navigate tohttp://localhost:8080/
in your browser. -
To log in as a customer, use username: customer[1 - 50] (for example: customer33) and password: overlook2020
-
To log in as a manager, use username: manager and password: overlook2020
- JavaScript
- jQuery
- fetch API
- Mocha
- Chai
- Webpack
- Sass (SCSS)
-
Use OOP to drive the design of the application and the code
-
Work with an API to send and receive data
-
Solidify the code review process
-
Create a robust test suite that thoroughly tests all functionality of a client-side application
-
Add functionality for the resort manager to book a customer a reservation outside of the current day. (GitHub Issue #30)
-
Sort all past and upcoming bookings for a customer in descending order. (GitHub Issue #32)
-
After a customer/manager has booked/cancelled a reservation, the updated data should be retrieved from the API and loaded back into the application seamlessly so that the customer/manager has the most up-to-date data. (GitHub Issue #33)