LiveTrack is a real-time location sharing app where users can join a room, share live updates, view active participants, and work with a compact DigiPin location code. It is built with a React + Vite frontend, a Node.js + Express + Socket.IO backend, and MongoDB for room storage.
Live Link:
Local development:
- Frontend: http://localhost:5173
- Backend: http://localhost:4000
- Join or create a room with a short room code
- Share live location updates in real time
- View room participants and their sharing status
- Search a location using a DigiPin code
- Click the map to generate a DigiPin for an Indian location
- View the current DigiPin only while sharing
- About page with a simple project overview
- Mobile-first UI for frequent phone use
Frontend
- React
- Vite
- MapLibre GL
- Plain CSS
Backend
- Node.js
- Express.js
- Socket.IO
- MongoDB + Mongoose
Utilities
- DigiPin encoder and decoder helpers
- dotenv for environment configuration
client/- React app, pages, components, utilities, and styling
server/- Express API, Socket.IO handlers, MongoDB models, and routes
digipin-java/- Reference DigiPin implementation and supporting files
Create a .env file inside server/ and add:
PORT=4000
MONGO_URI=mongodb://127.0.0.1:27017/livetrackOptional production values can point to your hosted MongoDB database and custom server port.
- Clone the repository
git clone <github-repo-url>- Move into the project folder
cd live-share-tracker- Install dependencies for the client and server
cd client
npm install
cd ../server
npm install-
Add the server environment variables in
server/.env -
Start the backend
cd server
npm run dev- Start the frontend in a second terminal
cd client
npm run devClient routes
GET /- Join or create a roomGET /about- About LiveTrack
API routes
GET /api/health- Health checkPOST /api/rooms- Create a roomGET /api/rooms/:roomCode- Fetch a room by code
Socket.IO
- Live room connection and location updates are handled through Socket.IO on the backend.
Client
npm run dev- start the Vite development servernpm run build- build the frontend for productionnpm run preview- preview the production build
Server
npm run dev- start the server with file watchingnpm start- start the server normally
- LiveTrack is designed with mobile usage in mind.
- DigiPin is an app-specific location code and is not the same as the Indian Post addressing system.
- Location sharing is room-based and real-time.
ISC
Aman Show