This is a ride-sharing platform designed to help MUET students conveniently find and offer rides, reducing travel costs and promoting eco-friendly commuting. Users can create ride offers, search for available rides, manage their trips, and receive real-time updates.
- User Authentication: Secure login and signup system.
- Offer a Ride: Drivers can create ride offers.
- Find a Ride: Passengers can search for available rides.
- Manage Rides: Users can oversee their current rides.
- Ride History: Log of all created, joined, and canceled rides.
- Notifications: Alerts for ride cancellations or when a passenger leaves.
- Real-time Updates: Live seat availability and ride notifications using WebSockets.
- Forgot Password: Users can reset passwords via email link.
- Microsoft Login: Users can Login and Sign Up using their Microsoft university email.
- Frontend: EJS (Embedded JavaScript Templates) + Tailwind CSS
- Backend: Node.js + Express.js
- Database: MongoDB (via Mongoose)
- Authentication: JWT (JSON Web Token) + Microsoft OAuth
- File Storage: Cloudinary
- Email Service: Resend
- Real-time Updates: WebSockets
- Clone the repository:
git clone https://github.com/sunjay-dev/Ride-sharing-website cd Ride-sharing-website - Install dependencies:
npm install
- Set up environment variables in a
.envfile (see below). - Run the server:
The app will be running at
npm start
http://localhost:3000
Create a .env file in the root directory and add the following:
MONGO_URI=mongodb+srv://your_username:your_password@your_cluster.mongodb.net/database_name
CLOUDINARY_CLOUD_NAME=your_cloud_name
CLOUDINARY_API_KEY=your_api_key
CLOUDINARY_API_SECRET=your_api_secret
JWT_SECRET=your_jwt_secret
PORT=3000
SENDER_EMAIL=EMAIL_ADDRESS
CLIENT_URL=http://localhost:3000
RESEND_EMAIL_API_KEY=RESEND_EMAIL_API_KEY
MICROSOFT_CLIENT_ID=MICROSOFT_CLIENT_ID
MICROSOFT_CLIENT_SECRET=MICROSOFT_CLIENT_SECRET- Sign Up with university email (
@students.muet.edu.pk). - Login to access ride-sharing features.
- Forgot Password? Reset using an emailed link.
- Develop a mobile app for iOS & Android.
- Add a feature for drivers to approve passengers before joining a ride.
- 🎉 Hackathon: Hack for Humanity🥇
- Public Voting Winner🏅
- Ranked 20th among all participants📜
- Varoon Kumar - UI Designer
- Sunjay Kumar - MERN Stack Developer (Backend Focused)
- Muhammad Sajid - MERN Stack Developer (Frontend Focused)
We would like to thank Dr. Rabeea Jaffari for her guidance, project design, supervision, and continuous mentorship throughout this project.
If you like our project, please support us by contributing open source! 🙌
