Skip to content

Dockerized web application for routing through city. Based on GTFS

License

Notifications You must be signed in to change notification settings

som-pat/City-Navigator

Repository files navigation

City_Navigator

Travel.Interface.-.Google.Chrome.2024-10-03.20-52-27.mp4

About

This project is a dockerized web application that displays routes from one point to another based on metro, bus, walking and multimodial(mix of all types) for a city using FastAPI, Leaflet.js, Python, PostgreSQL, Docker, Machine learning algorithms, Javascript, CSS and HTML. Users can input start and end points for their journey to find an efficient and shortest route. Factors like less walking and faster journey routes can be set and the algorithm will include those and map the route dynamically.

Screenshot 03_10_2024 20_55_02

Features

  • Finds the fastest travellable route on the basis of metro, bus, walking or a mix of all.
  • Routes take into account the weather possibilites, traffic conditions and selects travel means for the fastest ETA.

Project Structure

project_root/
│
├── Dataset/
│   ├── Metro_zipfile
│   ├── DMTC_buses_zipfile
│
├── app/
│   ├── main.py
│   
├──Static/
│  ├──styles.css
│
├──Templates/
│  ├──overlay.html
│ 
├── Dockerfile
├── compose.yml
├── requirements.txt
└── ETL_combi.py

To run the project follow the below instructions

- Clone the repo : https://github.com/som-pat/Metro.git 
- Start virtual environment: .venv\Scripts\Activate
- Download the datasets from the links below
- Populate the database : docker-compose start pgadmin && python ETL_combi.py
- Start the whole app : docker-compose up
- Application will be running on localhost:8000

References

GTFS link
Static Metro GTFS dataset
Static Bus GTFS dataset
Weather data

About

Dockerized web application for routing through city. Based on GTFS

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published