An open API service indexing awesome lists of open source software.

https://github.com/amriteshanand0129/moveinsync

Case Study of MoveInSync : The Carpooling System is a backend-driven ride-sharing platform that connects riders with drivers based on location and user preferences.
https://github.com/amriteshanand0129/moveinsync

express mongodb moveinsync nodejs postman websocket

Last synced: 3 months ago
JSON representation

Case Study of MoveInSync : The Carpooling System is a backend-driven ride-sharing platform that connects riders with drivers based on location and user preferences.

Awesome Lists containing this project

README

          

# πŸš— Carpooling System Backend

This is the **backend server** for the **Carpooling System**, a ride-sharing platform that allows users to find, create, and join rides. The backend is built using **Node.js, Express, MongoDB**, and **WebSockets** for real-time updates.

---

## πŸ“Ί **Demo Video**
Watch the full project demonstration here:
πŸ”— [Video Demo](https://drive.google.com/drive/folders/1TDNILCOFfVENKyc-CCbK3V-lNyYy4pZm?usp=drive_link)

---

## πŸš€ **Features**
βœ… **User Authentication** (JWT-based authentication)
βœ… **Ride Management** (Create, join, and update rides)
βœ… **Real-time Ride Updates** (WebSocket integration)
βœ… **Ride Matching Algorithm** (Filters rides based on preferences, location proximity, and matching percentage)
βœ… **Rider Privacy** (Personal details hidden for other users)
βœ… **Emergency SOS Feature** (Notifies family members & authorities with the rider’s location)

---

## πŸ› οΈ **Tech Stack**
- **Backend:** Node.js, Express.js
- **Database:** MongoDB (hosted on Atlas)
- **WebSocket:** `ws` for real-time communication
- **Authentication:** JWT

---

## βš™οΈ **Setup & Installation**

### **1️⃣ Clone the Repository**
```sh
git clone https://github.com/amriteshanand0129/MoveInSync
cd backend
```

### **2️⃣ Install Dependencies**
```sh
npm install
```

### **3️⃣ Setup Environment Variables**
Create a .env file in the root directory and add the following:
```sh
PORT = 8080
DB_URL = your_database_url
SECRET = your_jwt_secret
```

### **4️⃣ Start the server**
```sh
npm start
```

The sever will be listening on PORT 8080.

### πŸ›°οΈ **API Endpoints** ###

πŸ”— [View Documentation](https://documenter.getpostman.com/view/33774669/2sAYXEFJSi)