A comprehensive vehicle rental platform built with React frontend and Express.js backend, featuring user authentication, vehicle management, booking system, and payment processing.
- User Authentication: JWT-based authentication with role-based access control
- Vehicle Management: Add, update, delete, and manage vehicle listings
- Booking System: Complete booking lifecycle management
- Payment Processing: Integration with payment gateways
- Admin Dashboard: Comprehensive admin and super admin panels
- API Documentation: Well-documented RESTful API endpoints
- Modern UI: Built with React, Vite, and Tailwind CSS
- Responsive Design: Mobile-friendly interface
- User Dashboard: Personal dashboard for users and renters
- Vehicle Search: Advanced search with location-based filtering
- Booking Management: Easy booking creation and management
- Payment Integration: Secure payment processing
- Node.js with Express.js framework
- MongoDB with Mongoose ODM
- JWT for authentication
- bcrypt for password hashing
- CORS for cross-origin requests
- React with Vite build tool
- Tailwind CSS for styling
- React Router for navigation
- Axios for API calls
- React Hot Toast for notifications
Car_Rentals_2025/
├── back_end/ # Backend server
│ ├── controllers/ # Route controllers
│ ├── models/ # MongoDB models
│ ├── routes/ # API routes
│ ├── middlewares/ # Authentication middleware
│ ├── utils/ # Utility functions
│ ├── db/ # Database connection
│ ├── app.js # Express app configuration
│ ├── index.js # Server entry point
│ └── package.json # Backend dependencies
├── front_end/ # React frontend
│ ├── src/
│ │ ├── components/ # Reusable components
│ │ ├── pages/ # Page components
│ │ ├── assets/ # Static assets
│ │ ├── App.jsx # Main app component
│ │ └── main.jsx # React entry point
│ └── package.json # Frontend dependencies
└── README.md # Project documentation
- Node.js (v14 or higher)
- MongoDB (local or cloud instance)
- Git
-
Clone the repository
git clone https://github.com/Soumen044/Vehicle_Rental_Platform.git cd Vehicle_Rental_Platform -
Setup Backend
cd back_end npm install -
Setup Frontend
cd ../front_end npm install -
Environment Variables
- Create
.envfile inback_end/directory:PORT=2424 DB_URL=mongodb://localhost:27017 JWT_SECRET=your_jwt_secret_key CORS_ORIGIN=http://localhost:5173
- Create
-
Start Development Servers
- Backend:
cd back_end && npm run dev - Frontend:
cd front_end && npm run dev
- Backend:
Detailed API documentation is available in API_DOCUMENTATION.md
- User: Can book vehicles and manage their bookings
- Renter: Can list vehicles and manage their rentals
- Admin: Can monitor platform activities and manage content
- Super Admin: Full platform administration privileges
This project is licensed under the MIT License - see the LICENSE file for details.
- Fork the project
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
For support and questions, please open an issue in the GitHub repository.
- Mobile app development
- Real-time notifications
- Advanced analytics dashboard
- Multi-language support
- Enhanced payment gateway integration