EconGE.
The Georgian economic record, collected nightly.
An automated pipeline that gathers, normalizes, and publishes economic statistics from Georgia's official sources — GeoStat, the National Bank, the Ministry of Finance, the World Bank, and the IMF — into one browsable archive with a structured public API.
The Archive
Five official sources, one record
Each source is scraped on its own schedule, parsed into structured datasets, and loaded into a normalized PostgreSQL schema.
Why this exists
The record was scattered.
Now it isn't.
Georgian economic data is published across multiple government websites in inconsistent formats — Excel spreadsheets, PDFs, and fragmented APIs. Finding a historical time series, or comparing indicators across sources, is painful.
EconGE automates the collection, normalization, and storage of this data into a single PostgreSQL database with a clean, browsable interface on top. It runs on a schedule, so the record stays fresh without manual intervention.
It is both a practical tool and a working demonstration of end-to-end data engineering: ingestion, transformation, storage, orchestration, and delivery.
In practice
- 01 Automated daily scraping of official sources
- 02 Normalized schema across all data providers
- 03 Browsable portal with search and charts
- 04 Time-series visualization on every dataset
- 05 Dagster-managed pipeline with monitoring
- 06 Dockerized deployment on a single VPS
- 07 JSON API for programmatic access
- 08 Incremental loading — only new data is fetched
Colophon
How it's built
A modern data stack running on a single VPS — no cloud vendor lock-in.
┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐
│ GeoStat │ │ NBG │ │ MoF │ │ IMF │ │World Bank│
│ (Excel) │ │(JSON API)│ │ (Excel) │ │ (API) │ │ (API) │
└─────┬────┘ └─────┬────┘ └─────┬────┘ └─────┬────┘ └─────┬────┘
└────────────┴────────────┼────────────┴────────────┘
│
┌────────▼───────┐
│ Dagster │
│ (Orchestrator) │
└────────┬───────┘
│
┌────────▼───────┐
│ Python assets │
│ (extract + │
│ transform) │
└────────┬───────┘
│
┌────────▼───────┐
│ PostgreSQL 16 │
│(econge schema) │
└────────┬───────┘
┌────────────┴────────────┐
┌─────────▼────────┐ ┌─────────▼────────┐
│Data portal + API │ │ Dagster web UI │
│ (FastAPI) │ │ (read-only) │
└──────────────────┘ └──────────────────┘
Read the record.
Browse 15,502 series, chart any of them, pull them through the API — or open the pipeline and watch the machinery run.