Live Brussels tram departures and monitored STIB service updates.
- Belgian Mobility
WaitingTimesfor:5830Bens toward Albert0711Albert toward Van Haelen5058Heros / Helden with grouped departures for line4and line92
- Belgian Mobility
TravellersInformation, limited to:- metro lines
1,2,5,6 - tram lines
18,4,10,92
- metro lines
- Duplicate and low-priority advisories filtered before rendering
/healthzendpoint for health checks
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
cp .env.example .env
python 661ACode.pyThe app defaults to Belgian Mobility and can still fall back to the legacy STIB source with:
STIB_DATA_SOURCE=legacy python 661ACode.pyBELGIAN_MOBILITY_BASE_URLBELGIAN_MOBILITY_SUBSCRIPTION_KEYBELGIAN_MOBILITY_SECONDARY_KEYSTIB_DATA_SOURCESTIB_API_KEYPORT
Do not commit live keys into the repository.
This app now supports Vercel's Flask runtime through api/index.py, with vercel.json rewrites for / and /healthz. Static assets are duplicated under public/static/** for Vercel CDN delivery.
Typical setup:
vercel
vercel env add BELGIAN_MOBILITY_BASE_URL production
vercel env add BELGIAN_MOBILITY_SUBSCRIPTION_KEY production
vercel env add BELGIAN_MOBILITY_SECONDARY_KEY production
vercel env add STIB_DATA_SOURCE production
vercel --prodRecommended values:
BELGIAN_MOBILITY_BASE_URL=https://api-management-discovery-production.azure-api.net/api/datasets/stibmivbSTIB_DATA_SOURCE=belgian_mobility
Use vercel dev for local Vercel-style development once the virtualenv is installed.
The existing Render service is still:
- Service ID:
srv-d17r682dbo4c73denor0 - URL:
https://six61atransport.onrender.com
Recommended runtime command:
gunicorn --bind 0.0.0.0:$PORT 661ACode:app