Project

ETL Mini-Pipeline — Daily Weather

A medallion-style data pipeline (raw → bronze → silver → gold) that pulls daily weather for 5 cities from Open-Meteo, validates every row with Pydantic, lands it in a DuckDB warehouse, and serves it through a Streamlit dashboard. Zero hosted infrastructure.


title: ETL Mini-Pipeline — Daily Weather blurb: A medallion-style data pipeline (raw → bronze → silver → gold) that pulls daily weather for 5 cities from Open-Meteo, validates every row with Pydantic, lands it in a DuckDB warehouse, and serves it through a Streamlit dashboard. Zero hosted infrastructure. personas: [data] stack:


What it is

A small-but-real ELT pipeline that retrieves daily weather aggregates for Tunis, Lisbon, Paris, Cairo, and Lagos from the Open-Meteo API (no auth) and moves them through a four-layer medallion architecture into a DuckDB warehouse, with a Streamlit dashboard on top. It's the "beyond notebooks" project — end-to-end ownership of data plumbing without any hosted infrastructure.

Highlights

What it took

Stack at a glance

httpx · pydantic v2 · pandas · pyarrow · duckdb · typer · rich · streamlit · altair — a compact stack that covers ingestion, validation, a real warehouse, a CLI, and a dashboard.