π¬ RideIt β Online Cab Booking Platform π
--------------------------------------------------------------
RideIt is a MERN-stack online cab booking platform offering seamless ride booking, live driver tracking, secure payments with Razorpay, Google authentication, and route tracking. Designed for convenient and reliable travel, RideIt ensures a user-friendly and secure experience for both riders and drivers, featuring 3D vehicle previews and Geoapify-powered maps.
--------------------------------------------------------------
π Features
πΉ Cab Booking & Real-Time Tracking
β Instant Cab Booking β Book rides quickly with just a few taps.
β Live Driver Tracking β Track the driver's location in real time using Geoapify.
β Route Tracking β View the complete route and estimated arrival time on an interactive map container.
β Ride Page β Access previous rides with details like date, time, and fare.
πΉ 3D Vehicle Model Integration
β Vehicle Selection β Check the type of vehicle before booking.
β 3D Model Preview β Interactive 3D models to visualize car types and sizes.
πΉ Payment Integration
β Secure Payments β Pay seamlessly using Razorpay integration.
β Multiple Payment Options β Choose from cards, UPI, or digital wallets.
πΉ User Authentication & Security
β Google Authentication β Quick sign-in with Google.
β Secure Sign-up/Login β Register using email/password securely.
β Session Management β Stay logged in across devices.
β JWT-Based Authentication β Secure and reliable login system.
πΉ User & Driver Profile Management
β User Profiles β Update personal details and profile picture.
β Driver Dashboard β Complete statistics on rides completed, earnings, and user ratings.
πΉ Ride Management & Notifications
β Ride Scheduling β Schedule rides for a future date and time.
β Notifications β Get real-time alerts for ride booking, driver arrival, and ride completion.
β Fare Estimation β Calculate estimated fares based on distance and time.
πΉ Terms & Conditions
β Terms & Conditions Page β Detailed policies and guidelines for users and drivers.
β Privacy Policy β Information on data usage and user privacy.
--------------------------------------------------------------
π Tech Stack
Frontend:
- React.js (Vite) β Fast UI rendering for a seamless user experience.
- Tailwind CSS β Responsive and modern styling.
- Socket.io β Real-time communication for live tracking.
- Zustand β Efficient state management.
- Three.js β 3D model integration for vehicle previews.
Backend:
- Node.js & Express.js β Robust API server.
- MongoDB β Database for storing users, drivers, rides, and payments.
- JWT (JSON Web Tokens) β Secure authentication.
- Socket.io β Real-time updates for driver tracking.
- Google OAuth β Secure Google authentication.
Cloud Storage & Services:
- Razorpay β Secure and seamless payment integration.
- Geoapify β Real-time location tracking and route management with interactive map containers.
--------------------------------------------------------------
π Getting Started
1οΈβ£ Clone the Repository
```
git clone https://github.com/Tushar-bansall/Cab-booking.git
cd Cab-booking
```
2οΈβ£ Install Dependencies
```
npm run build
```
3οΈβ£ Set Up Environment Variables
Create a .env file in the server folder and add:
```
MONGO_URI=<your_mongo_database_url>
JWT_SECRET=<your_secret_key>
RAZORPAY_KEY_ID=<your_razorpay_key_id>
RAZORPAY_KEY_SECRET=<your_razorpay_key_secret>
GOOGLE_CLIENT_ID=<your_google_client_id>
GOOGLE_CLIENT_SECRET=<your_google_client_secret>
GEOAPIFY_API_KEY=<your_geoapify_api_key>
PORT=5000
NODE_ENV=development
```
4οΈβ£ Build and Run the Application
```
npm run start
```
--------------------------------------------------------------
π₯ Live Demo
https://rideit.onrender.com
π Book rides, track drivers, preview vehicles in 3D, and travel conveniently with RideIt! π