CampusRide is a university-exclusive ride-sharing platform designed to connect students and staff for daily commutes. It ensures cost-effective, secure, and community-based transportation by allowing only verified university members to share rides.
(To be added)
- ๐ Live Demo
- ๐ท Screenshots:
- ๐ Search Rides: Easily find upcoming rides by time, route, or availability.
- โ๏ธ Post a Ride: Offer rides with route, date, seat count, and pricing.
- ๐ Real-Time Updates: Live tracking of rides and status updates.
- ๐ฅ User System: Profile, authentication, trust scores, and ratings.
- ๐ฌ Built-in Chat: Communicate with drivers/passengers securely.
- ๐ Notifications: Get alerts about requests, acceptances, cancellations, etc.
- ๐งพ History Log: See your previous rides and interactions.
Type | Technology |
---|---|
Frontend | React |
Styling | Tailwind CSS |
Backend | Node.js + Express |
Database | MySQL |
Authentication | JWT |
Real-Time | Socket.IO |
Make sure you have installed:
- Node.js โฅ 16
- npm or yarn
- MySQL (local or cloud)
- Git
- Clone the repo
git clone https://github.com/badhon-dalbot/campus-ride.git
cd campus-ride
- Install dependencies
npm install
- Run the Application
npm start
npm run dev
Visit http://localhost:5173 to use the app.
Coming soon!
Q: Who can use CampusRide? A: Currently, only verified students from registered universities.
Q: Is CampusRide free? A: Yes, but ride providers may request a small fee for fuel.
Q: Can I cancel a ride request? A: Yes. Requests can be canceled until accepted.
Q: How is trust handled? A: Users can rate each other and report issues. Moderation tools are in progress.
-
๐ซ Ride map is currently static (in progress).
-
๐ต No SMS or email notifications yet.
-
๐ Some mobile layouts need polish.
-
๐ No admin/moderator panel yet.
-
โ Admin dashboard for managing users and complaints
-
๐ Automated ride suggestions based on history
-
๐ฒ Publish as native Android/iOS app
-
๐ง ML for optimizing ride matches
-
๐ Community carpool expansion
Contributions are welcome!
git checkout -b feature-xyz
git commit -m "Add feature xyz"
git push origin feature-xyz
This project is licensed under the MIT License. See LICENSE for more info.
If you like the project, consider giving it a โญ on GitHub!
- Driver Dashboard: View earnings, ratings, upcoming rides, and vehicle information
- Offer Rides: Create new rides with a 3-step process:
- Basic ride details (from/to, date, time, seats, price)
- Map selection for pickup and dropoff points using Google Maps
- Review and confirmation
- Ride Management: View and manage ride requests from riders
- Earnings Tracking: Monitor daily and weekly earnings
- Find Rides: Browse available rides with filters
- Book Rides: Request rides from drivers
- Chat: Communicate with drivers during rides
- Payment: Manage payment methods and view payment history
POST /api/rides
- Create a new ride (drivers only)GET /api/rides
- Get all ridesGET /api/rides/available
- Get available rides for bookingGET /api/rides/:id
- Get specific ride detailsPOST /api/rides/requests
- Create ride request (riders)GET /api/rides/requests/:id
- Get ride request details
GET /api/driver/:id/dashboard
- Get driver dashboard dataGET /api/driver/:id/ride-requests
- Get pending ride requestsGET /api/driver/:id/accepted-rides
- Get accepted ridesPATCH /api/ride-request/:id
- Update ride request status
The application uses the following main tables:
users
- User accounts (drivers and riders)rides
- Ride offerings from driversride_requests
- Booking requests from ridersride_fares
- Calculated fares for ridesvehicles
- Driver vehicle informationratings
- User ratings and reviews