NOTE
As of the latest README commit:
- Live journey tracking is only offered for NUST via mock devices
- City wise metrobus route-maps and info are only available for Islamabad
IMPLEMENETED FUNCTIONALITY IS TO BE EXTENDED IN FUTURE PATCHES, THIS IS SOLELY FOR DEMONSTRATION PURPOSES
MetroMaps is a go-to portal for real-time updates on routes, timings, and live tracking of Pakistan's public transport system. Our user-friendly platform aims to streamline travel experience, ensuring informed and seamless utilization of public transportation across the country.
- Live journey tracking
- Next stop and closest station info
- City wise metrobus route-maps info
- Bilingual support to cater Pakistani citizens
The application follows a Client-Server architecture:
CLIENT SIDE Responsible mainly for UI rendering and event-handling.
SERVER SIDE Responsible for mainly request-handling (querying, routing and calculations) and geolocation tracking.
- MERN Stack
- HTML, CSS and JS
- Mapbox GL JS
- Google Maps Platform
- Clone the repository:
git clone https://github.com/a-ayesh/MetroMaps.git
- Change directory to server:
cd server
- Install server dependencies:
npm install
- Copy the example environment file:
cp .env.example .env
- Provide API keys / MongoDB cluster string in
.env
- Run the server (port
4000
):npm run serve
- Change directory to client:
cd ../client
- Install client dependencies:
npm install
- Start the client (port
3000
):npm run start
-Application will be running onhttp://localhost:3000/
Mock devices for testing
device*.html
files inside client/public/device/
directory may be opened while running application to test tracking functionality.