Car-Saathi is a carpooling platform designed to connect drivers with passengers looking for a ride. This project aims to promote carpooling, reduce traffic congestion, and minimize carbon emissions. Built using React, Node.js, Express, and MongoDB, Car-Saathi provides a seamless and user-friendly experience for ride-sharing.
- Node.js
- npm or yarn
- MongoDB
-
Clone the repository git clone https://github.com/Sahilgupta3224/Car-Saathi.git
-
Navigate to the project directory cd Car-Saathi
-
Install server-side dependencies
cd server npm install -
Install client-side dependencies cd ../client npm install
-
Navigate to the socket directory and install dependencies cd ../socket npm install nodemon index.js
-
Start the development server
- cd server
- npx nodemon server.js
- Start the client
- cd ../client
- npm run start
-
Register or log in as a user.
- Access the registration or login page.
- Enter your details to create an account or log in.
-
If you are a driver, create a ride offering with details such as destination, date, time, and available seats.
- Provide details such as destination, date, time, and available seats.
- Publish the ride offering for passengers to see.
-
If you are a passenger, search for available rides based on your destination and preferred time.
- Enter your destination and preferred time.
- Browse through available ride options.
-
Book a ride and contact the driver for further coordination.
- Select a suitable ride and book it.
- Use the chat functionality to communicate with the driver.
-
User authentication and authorization
- Secure login and registration using JWT.
-
Create, view, and manage ride offerings
- Drivers can create and manage their ride offerings.
-
Publish rides
- Easily publish ride details for passengers to find.
-
Search for available rides
- Passengers can search for rides based on their destination and time preferences.
-
Book a ride
- Simple booking process for passengers.
-
Chat functionality
- Real-time communication between drivers and passengers using Socket.io.
-
Payment option available on website
- Secure payment integration with RazorPAY.
- Frontend: HTML, CSS, React, CSS bootstrap,CSS Tailwind
- Backend: Node.js, Express
- Database: MongoDB
- Real-time Communication: Socket.io
- Axios
- For making HTTP requests from the frontend to the backend.
- Google OAuth
- For secure and easy authentication using Google accounts. 3 .Google Maps API
- For integrating maps and location services.
- Socket.io
- For enabling real-time communication features.
- RazorPAY
- For handling payments.
- NodeMailer
- For sending emails.
- Firebase
- For additional backend services and notifications.
- Mongoose
- For MongoDB object modeling.
- Socket.io
- For real-time chat functionality.
-> How to Contribute
- Fork the repository
- Create a new branch (git checkout -b feature-branch)
- Commit your changes (git commit -m 'Add some feature')
- Push to the branch (git push origin feature-branch)
- Open a pull request
Sahil Gupta - [[email protected]] Rudra Sharma - [[email protected]] Khanak Patwari - [[email protected]] kritarth Shrivastav - [[email protected]]
Sahil Gupta - [[email protected]] Rudra Sharma - [[email protected]] Khanak Patwari - [[email protected]] kritarth Shrivastav - [[email protected]]
Project Link: https://github.com/Sahilgupta3224/Car-Saathi