×+
🔒maaji.site/projects/cookedcommute
← Back to projects

CookedCommute

Azure · Snowflake · dbt · FastAPI · Terraform

cookedcommute · live traffic · Amsterdam
PP
Simulated preview · predetermined sample data · the actual product design differs from this render

Real-time mobility dashboard for Amsterdam on an automated Azure-to-Snowflake ELT pipeline, serving live traffic, incidents and parking through FastAPI and MapLibre.

Use case

Replicates the live traffic and parking operations view a city mobility team would run: every street coloured by speed versus free flow, measured congestion from national road sensors, active incidents explaining the red roads, and nearest parking ranked from your GPS position.

Architecture

Timer-triggered Azure Functions (managed identity, no secrets in code) fetch NDW DATEX II sensor feeds every 5 minutes and RDW parking daily, landing date-partitioned raw NDJSON in ADLS Gen2. A Snowflake storage integration and scheduled task run idempotent COPY INTO loads, dbt builds tested staging views and marts, and SERVING views expose the latest row per entity with GEOGRAPHY points for distance queries. FastAPI serves GeoJSON and proxies TomTom tiles so the API key stays server-side, feeding a MapLibre GL frontend. Terraform provisions the Azure infra; GitHub Actions runs ruff, pytest and dbt parse.

View source on GitHub