A full-stack Uber-like ride-hailing application with real-time features, built using Node.js, Express, React, and Socket.io.
- User and Captain (Driver) authentication and registration
- Real-time ride requests and driver tracking (Socket.io)
- Google Maps integration for route and location display
- Ride booking, confirmation, and ride status updates
- Booking history and ride management
- Responsive UI for both users and captains
- Frontend: React, Vite, Tailwind CSS
- Backend: Node.js, Express, Socket.io
- Database: MongoDB
- Maps: Google Maps API
- Node.js (v18+ recommended)
- npm or yarn
-
Clone the repository:
git clone https://github.com/YOUR-USERNAME/uber-clone.git cd uber-clone -
Install dependencies for both frontend and backend:
cd backend npm install cd ../frontend npm install
-
Set up environment variables:
- Copy
.env.exampleto.envin bothbackend/andfrontend/if needed, and update values as required.
- Copy
-
Start the backend server:
cd backend npm start -
Start the frontend development server:
cd frontend npm run dev
uber-clone/
├── backend/
│ ├── controllers/
│ ├── middleware/
│ ├── models/
│ ├── routes/
│ ├── services/
│ ├── app.js
│ ├── db.js
│ ├── server.js
│ └── ...
├── frontend/
│ ├── src/
│ ├── public/
│ ├── index.html
│ └── ...
├── README.md
└── ...
Pull requests are welcome! For major changes, please open an issue first to discuss what you would like to change.
MIT