Airbnb Clone (Fullstack Project)
Jane Developer / March 15, 2024
This is a fullstack Airbnb clone built with Spring Boot 3 for the backend and Angular 17 with PrimeNG for the frontend. It utilizes Auth0 for authentication and authorization, and PostgreSQL for data persistence.
Feature
- Booking Management: Travelers can create, view, and manage their bookings.
- Landlord Reservation Management: Property owners can manage reservations for their listings.
- Advanced Search: Search for houses by various criteria (location, date, guests, beds, etc).
- Authentication and Authorization: Secure user authentication and role-based access control using Auth0 (OAuth2).
- Domain-Driven Design: Implemented using best practices for scalable and maintainable code.
Technologies
-
Spring Boot 3: A powerful framework for building Java-based enterprise applications.
-
Angular 17: The latest version of the Angular platform for building web applications.
-
PrimeNG: A rich set of open-source UI components for Angular.
-
PostgreSQL: An advanced open-source relational database.
-
Auth0: Provides secure authentication and authorization services.
Prerequisites
- NodeJS 20.11 LTS
- Angular CLI v17
- IDE (VSCode, IntelliJ)
Getting Started (Frontend)
To get started with the frontend of this project, clone the repository and set up the Angular application:
git clone https://github.com/mounirrouissi/airbnb-clone.git cd airbnb-clone/frontend
Fetch dependencies
npm install
Launch dev server
ng serve
Navigate to http://localhost:4200/
The application will automatically reload if you change any of the source files.
Building the Frontend
To build the frontend project, run:
ng build
The build artifacts will be stored in the dist/
directory.