CarRental is a fully functional car booking web application built using the MERN stack (MongoDB, Express.js, React.js, Node.js). Users can browse and book cars by selecting pickup locations and dates, while admins can manage listings and bookings through a secure dashboard. The platform integrates email functionality and media optimization to offer a smooth booking experience.
🚀 Live Demo: https://car-rental-client-theta.vercel.app/
📂 GitHub Repo: CarRental Repository
- User Authentication using JWT (JSON Web Tokens)
- Browse Car Listings with real-time availability
- Location Autocomplete using LocationIQ API
- Select Pickup Location & Date
- Book Cars and contact the owner via email upon confirmation
- Admin Dashboard with secure access
- Add New Cars to inventory
- Manage All Bookings
- Media Management using ImageKit (fast loading and optimized delivery)
| Layer | Technology |
|---|---|
| Frontend | React.js, Tailwind CSS |
| Backend | Node.js, Express.js |
| Database | MongoDB (with Atlas) |
| Authentication | JWT |
| Media Handling | ImageKit |
| Maps/Autocomplete | LocationIQ |
| Hosting | Vercel (Frontend), Render/etc. (Backend) |
# Clone the repository
git clone https://github.com/balmukund18/CarRental-fullstack.git
# Navigate to the server directory
cd CarRental-fullstack/server
# Install backend dependencies
npm install
# Create a .env file in the /server folder and add the following:
# - MONGODB_URI
# - IMAGEKIT_PUBLIC_KEY
# - IMAGEKIT_PRIVATE_KEY
# - IMAGEKIT_URL_ENDPOINT
# - LOCATIONIQ_API_KEY
# - JWT_SECRET
# - Other required credentials
# Start the backend server
npm run server# Navigate to the client directory
cd CarRental-fullstack/client
# Install frontend dependencies
npm install
# Create a .env file in the /client folder and add:
# - VITE_CURRENCY
# - VITE_BASE_URL
# Start the React development server
npm run dev
Feel free to contribute! Open a pull request or report issues to help improve the project.
This project is open-source under the MIT License.
For queries, suggestions, or collaborations, feel free to reach out:
- 📧 Email: sm1370530@gmail.com
- 🔗 GitHub: @balmukund18
Open to feedback, issues, or contributions! 🤝