Skip to main content

Technology Stack

Every tool and framework used across the Transport Stack ecosystem, organized by domain. This table helps city IT teams and developers assess what skills, infrastructure, and licenses are needed to deploy and operate the platform.

Legend: ✅ Production  |  🔬 Evaluation  |  📝 Planned

License Note: The licenses below are for the third-party tools Transport Stack depends on (Django, React, Redis, etc.). The Transport Stack project code itself is licensed under Apache 2.0 — see the LICENSE file in each repository.


Backend — Languages & Runtimes

LanguageVersionUsed By
Python3.7+ETA Calculator, Schedule Adherence, Bus Bunching, Auto Outshedding
Python3.10+Journey Planner, Open Transit Data APIs, ONDC Seller/Buyer, Urban Transit Facilities
Java17+Web Portal Backend
JavaData Collection App (Android)
Node.js20 LTSWeb Portal Frontend, Wiki

Backend — Frameworks

FrameworkVersionLanguageRepositoriesLicenseStatus
Django5.0.2PythonJourney Planner (via Poetry)BSD-3
Django3.x–4.xPythonOpen Transit Data APIs, ONDC Seller/Buyer, Urban Transit FacilitiesBSD-3
Flask2.3.2PythonETA CalculatorBSD-3
Flask2.2.2PythonPark-n-Ride Trip PlannerBSD-3
FastAPIPythonAuto OutsheddingApache 2.0
Spring Boot3.3.1JavaWeb Portal BackendApache 2.0
Django REST Framework3.14.0–3.15.2PythonOpen Transit Data APIs, Urban Transit FacilitiesBSD-3
Celery5.3.1–5.3.4PythonONDC Buyer, Urban Transit Facilities, ONDC Buses SellerBSD-3
UvicornPythonAuto OutsheddingBSD-3
Gunicorn20.1.0–23.0.0PythonAll Python web servicesMIT

Frontend

TechnologyVersionRepositoryLicenseStatus
React18.3.1Web Portal FrontendMIT
Docusaurus3.7.0Documentation WikiMIT
Bootstrap / Crispy Forms2.10.4Web Portal, Urban Transit FacilitiesMIT

Mobile

PlatformLanguageBuild ToolRepositoryStatus
AndroidJavaGradleShared Transit Data Collection App

Databases & Storage

DatabaseVersionUsed ByPurposeStatus
PostgreSQL15+Open Transit Data APIs, Journey Planner, Web Portal, ONDC services, Urban Transit FacilitiesPrimary RDBMS
SQLite3ETA Calculator, Bus Bunching, Auto Outshedding, Schedule Adherence, Data Collection AppLightweight local storage
Redis5.0.1–5.0.7Open Transit Data APIs, ONDC services, Urban Transit FacilitiesCaching, message broker
AWS S3 (or compatible)Open Transit Data APIsGTFS data files, static assets

CI/CD & DevOps

ToolVersionPurposeLicenseStatus
GitHub ActionsCI/CD pipelinesFree for OSS
Docker24+ContainerizationApache 2.0
Docker ComposeLocal developmentApache 2.0
nginx1.25Reverse proxy, static servingBSD-2
Gunicorn20.1.0–23.0.0Python WSGI serverMIT

API & Documentation

ToolVersionPurposeLicenseStatus
Django REST Framework3.14.0–3.15.2REST API frameworkBSD-3
drf-spectacular / drf-yasgOpenAPI schema generationApache 2.0
Swagger UIInteractive API explorerApache 2.0
Mermaid10+Diagrams in wiki documentationMIT

Monitoring & Observability

ToolVersionPurposeUsed ByStatus
Elastic APMApplication performance monitoringETA Calculator, Urban Transit Facilities
ELK StackCentralized logging (Elasticsearch, Logstash, Kibana)Urban Transit Facilities

GIS & Mapping

LibraryVersionPurposeUsed ByLicenseStatus
GeoPy2.2.0–2.4.1Geocoding, distance calculationJourney Planner, Park & Ride, Auto OutsheddingMIT
Shapely2.0.3+Geometric operationsJourney Planner, Auto OutsheddingBSD-3
GeoPandas0.14.3Spatial data handlingJourney PlannerBSD-3
NetworkX3.3Graph algorithms (route optimization)Journey PlannerBSD-3
OpenStreetMapMap dataJourney Planner, Park & RideODbL

Data Processing & Analytics

LibraryVersionPurposeUsed ByLicenseStatus
pandas1.3.0+ / 2.2.0Data manipulation, GTFS processingJourney Planner, Auto Outshedding, Bus BunchingBSD-3
NumPy1.26.4Numerical computingJourney Planner, Auto OutsheddingBSD-3
scikit-learn1.4.1Machine learningJourney PlannerBSD-3

Networking & Protocols

ProtocolUsed ByPurpose
GTFS (static + realtime)Open Transit Data APIs, all consuming modulesTransit data standard
Beckn / ONDCONDC Buses Seller, ONDC Micro-Mobility BuyerCommerce network protocol
HTTP/RESTAll modulesInternal service communication
WebSocketAuto OutsheddingReal-time communication

Package Management

ToolEcosystemUsed By
pipPythonAll Python repos (requirements.txt)
PoetryPythonJourney Planner
npmJavaScriptWeb Portal Frontend, Wiki
GradleJava / AndroidWeb Portal Backend, Data Collection App

Repository Quick-Reference

RepositoryLanguageFrameworkDatabaseCacheWSGI
open-transit-data-service-apisPython 3.10Django 3.x + DRF 3.15.2PostgreSQLRedis 5.0.7Gunicorn 23.0.0
eta-calculatorPython 3.7+Flask 2.3.2SQLiteGunicorn 20.1.0
journey-plannerPython 3.10Django 5.0.2 + PoetryPostgreSQL
schedule-adherencePython 3.7+— (standalone scripts)SQLite
bus-bunching-detectionPython 3.7+pandas + requestsSQLite
buses-auto-outsheddingPython 3.7+FastAPI + UvicornSQLiteUvicorn
park-n-ride-trip-plannerPython 3.7+Flask 2.2.2
ondc-buses-sellerPython 3.10Django 3.xPostgreSQLRedis 5.0.1Gunicorn 23.0.0
ondc-micro-mobility-buyerPython 3.10Django 3.xPostgreSQLRedisGunicorn 22.0.0
transport-stack-web-portal-backendJava 17+Spring Boot 3.3.1PostgreSQL
transport-stack-web-portal-frontendJavaScriptReact 18.3.1
urban-transit-facilitiesPython 3.10 + JSDjango + Celery 5.3.4PostgreSQLRedisGunicorn 20.1.0
shared-transit-data-collection-appJavaAndroid / GradleSQLite
wiki-transport-stackJavaScriptDocusaurus 3.7.0