This is a full-stack car rental system built using React & TypeScript for the front end and Spring Boot (Spring Security, JPA) for the back end, with MySQL as the database. The system allows users to easily browse, book, and manage car rentals.
- User Authentication: Secure login and registration using Spring Security.
- Car Management: View, add, update, and delete cars with details like model, price per day, year, and brand.
- Rental Management: Book cars, manage reservations, and print invoices.
- Customer Dashboard: Separate pages for customers to view available cars and their rental history.
- Admin Panel: Manage cars, brands, and rental records.
- Responsive Design: Optimized for both desktop and mobile devices.
- Frontend: React & TypeScript
- Backend: Spring Boot (Spring Security, JPA)
- Database: MySQL
Make sure you have the following installed on your system:
git clone https://github.com/<your-username>/carrental.git
cd carrental- Navigate to the Spring Boot project folder:
cd backend - Update
application.propertieswith your MySQL credentials:spring.datasource.url=jdbc:mysql://localhost:3306/car_rental_db spring.datasource.username=your_username spring.datasource.password=your_password spring.jpa.hibernate.ddl-auto=update
- Run the Spring Boot application:
./mvnw spring-boot:run
- Navigate to the React project folder:
cd frontend - Install dependencies:
npm install
- Start the React development server:
npm start
- Visit
http://localhost:3000to access the frontend. - Backend runs on
http://localhost:8080. - Admin can manage cars, brands, and rental records.
- Customers can browse available cars and manage their bookings.
Feel free to submit issues, fork the repository, and send pull requests. Contributions are welcome!
For any questions or feedback, feel free to reach out!