This project is a comprehensive Hotel Management Web Application. It allows users to manage hotel reservations, send automated emails, handle specific booking conditions, and manage room statuses efficiently.
- User Registration & Login: Users can register and log in to the system.
- Room Reservation: Users can make room reservations.
- Automated Email Notifications: The system sends automated emails for booking confirmations, reminders, and other notifications.
- Reservation Management: Manage reservations with specific conditions.
- Room Status Management: View and update the status of hotel rooms.
- Backend: Java 21, Spring Boot (Spring Security, Spring Boot Web, Spring Boot Data JPA, Spring Boot Mail, Spring Boot Actuator, etc.)
- Maven
- Mapstruct
- Swagger
- Lombok
- JWT
- Frontend: Angular & Angular CLI 17.3.7, Javascript, Typescript
- Node.js
- Database: PostgreSQL
- Java 11 or later
- Node.js and npm
- PostgreSQL database
-
Clone the repository:
git clone https://github.com/ulasahin/HotelManagementWebSite.git cd HotelManagementWebSite/backend
-
Update the
application.properties
file with your PostgreSQL database configuration:spring.datasource.url=jdbc:postgresql://localhost:5432/HotelManagementWebSiteDB spring.datasource.username=your_username spring.datasource.password=your_password spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect spring.jpa.hibernate.ddl-auto=update spring.jpa.show-sql=true
-
Build and run the Spring Boot application:
./mvnw spring-boot:run
-
Navigate to the frontend directory:
cd ../frontend
-
Install dependencies:
npm install
-
Start the Angular development server:
ng serve
-
Open your browser and navigate to
http://localhost:4200
.