Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/hey-its-d2t2/travelbnb
TravelBnB is a backend-only hotel booking system developed using Java and Spring Boot. This project offers a comprehensive set of RESTful APIs that manage hotel bookings, room searches, user reservations, and more. It also includes advanced features like secure user authentication, media uploads, and communication integrations.
https://github.com/hey-its-d2t2/travelbnb
aws aws-ec2 aws-s3 git github hibernate-jpa java jwt-authentication maven mysql-database rdbms spring-boot springsecurity twillio-api
Last synced: about 1 month ago
JSON representation
TravelBnB is a backend-only hotel booking system developed using Java and Spring Boot. This project offers a comprehensive set of RESTful APIs that manage hotel bookings, room searches, user reservations, and more. It also includes advanced features like secure user authentication, media uploads, and communication integrations.
- Host: GitHub
- URL: https://github.com/hey-its-d2t2/travelbnb
- Owner: hey-its-d2t2
- Created: 2024-06-20T05:09:57.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-08-24T07:48:28.000Z (4 months ago)
- Last Synced: 2024-08-24T08:49:20.653Z (4 months ago)
- Topics: aws, aws-ec2, aws-s3, git, github, hibernate-jpa, java, jwt-authentication, maven, mysql-database, rdbms, spring-boot, springsecurity, twillio-api
- Language: Java
- Homepage:
- Size: 64.5 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
### TravelBnB - Hotel Booking System
TravelBnB is a backend-only hotel booking system developed using Java and Spring Boot. This project offers a comprehensive set of RESTful APIs that manage hotel bookings, room searches, user reservations, and more. It also includes advanced features like secure user authentication, media uploads, and communication integrations. The system is thoroughly tested using Postman to ensure reliability and performance.## Features
- **User Registration and Secure Authentication:** Users can register and log in securely using Spring Security, which handles authentication and authorization processes.- **Hotel Management:** Admins can add, update, and delete hotel information, including details such as location, room types, pricing, availability, and photos.
- **Room Search:** Users can search for available rooms by location, check-in/check-out dates, room type, and price range.
- **Booking Management:** Users can book rooms, view booking history, and cancel reservations. Booking confirmations are sent to users via email, SMS, or WhatsApp.
- **Review and Rating System:** Users can leave reviews and ratings for hotels they have stayed in, helping future guests make informed decisions.
- **Media Uploads:** Admins can upload hotel photos and other related media files to AWS S3 for secure and scalable storage.
- ** PDF Generation and Upload:** The system can generate booking invoices and other important documents in PDF format and upload them to AWS for easy access and download.
- **Automated Notifications:** Users receive notifications via email, WhatsApp, or SMS for booking confirmations, cancellations, and special offers.
- **Admin Dashboard:** Admins have access to a dashboard where they can manage all aspects of the hotels, bookings, user activity, and system settings.
-**Pricing and Discounts:** Supports dynamic pricing models and discount codes that can be applied during booking.
- **Data Security:** Sensitive data is protected using industry-standard encryption and security practices, ensuring user data remains confidential.
## Technologies Used
- **Java:** Core programming language for building the application.
- **Spring Boot:** Framework for developing the backend services, including RESTful APIs.
- **Spring Security:** For secure user authentication and authorization.
- **Hibernate/JPA:** ORM tool for managing database interactions.
- **MySQL:** Relational database for storing user, hotel, and booking information.
- **AWS S3:** For secure storage and retrieval of hotel photos, PDFs, and other media.
- **Postman:** Used for testing the APIs to ensure functionality and reliability.
- **Twilio/WhatsApp API:** For sending SMS and WhatsApp notifications to users.
- **JavaMail API:** For sending email notifications to users.
## Testing
The backend has been thoroughly tested with Postman, covering all core features, including user authentication, room search, booking, media uploads, and notification systems.