Summer 2023 project for the Web Application Technologies course in DIT@UoA
This was a project focused around creating a property reservation platform:
- Guest users can search and reserve properties.
- Host users can upload their properties and edit their information & availability.
- Admin users can enable/disable host users and export application data.
All project demands & requirements are described in detail in task.pdf.
- Designing the UI appearance using Uizard wireframes
- Designing the project architecture and structure
- Developing the application
- React & Tailwind CSS for the front-end application.
- SpringBoot for back-end & REST API.
Postman was used for testing API endpoints. - PostgreSQL is the selected DBMS.
The schema was created using DBeaver. - Docker
- Front-end application for all users (
client-app
) - Back-end & REST API application (
server-app
) - Database schema & data (
db
)
Docker is required.
-
Clone the repository locally.
-
Use
docker-compose up
to trigger the build & deployment process. This will create 3 containers:server-app-container
listening to port 8080db-container
listening to port 5432client-app-container
listening to port 3000
-
You may then explore the front-end application in your browser, by visiting
http://localhost:3000
.
-
Explore appartments & properties using various filters:
-
View property details & images:
-
Make property reservations:
-
Publish property reviews:
-
Get in contact with property hosts for more information & details:
-
View upcoming & past reservations:
-
Edit profile picture & personal information:
-
Edit property details, images & availability:
-
View property reviews & guest messages:
-
View owned properties:
-
View upcoming & past reservations on owned properties: