All projects
01Public data engineering2026Evidence verified

Kosovo Investment Data Platform

A public-data research scanner that turns fragmented Kosovo statistics into a cached, explainable decision-support interface.

Kosovo Property and Investment Screener showing public-data indicators and property research controls

The context

From an interesting idea to an inspectable system.

Official investment, tourism, housing, and business-registration data lives across separate statistical tables. The project brings those sources into one contract so regions and municipality-sector combinations can be compared without hiding the underlying numbers.

My contribution

What I built

  1. 01

    Combined five ASKdata datasets with World Bank indicators through a reusable ingestion pipeline.

  2. 02

    Normalized regional aliases and shaped the results into a single cached JSON contract.

  3. 03

    Added retries, fallbacks, atomic writes, scoring, anomaly flags, forecasting helpers, and an interactive Streamlit interface.

  4. 04

    Made the research-only limitation visible in the product rather than burying it in documentation.

Architecture

How the work moves

01ASKdata + World Bank
02Validation + normalization
03Cached JSON contract
04Scoring + Streamlit

Evidence

Verified results

015 ASKdata datasets + World Bank context
027 regions in the audited data contract
0333 quarterly housing-history entries
04Cached, failure-tolerant data delivery

Honest evaluation

Limits and trade-offs

  • The committed snapshot audited on 2026-09-04 was dated 2026-08-19; the app does not refresh automatically.
  • Business registration data exposes a latest count and derived growth value, not a real multi-year series in the app contract.
  • The business table still uses positional row selection and can change the selected municipality after a sector switch.
  • The regional map needs live OpenStreetMap tiles even though the remaining application reads cached data.

Inspect the work

Stack and reproduction

  • Python
  • Streamlit
  • ASKdata
  • World Bank API
  • Data pipelines
  1. 1Clone the public repository and install app/requirements.txt.
  2. 2Run python pipeline/fetch.py to rebuild the current data snapshot, or use the committed snapshot.
  3. 3Run streamlit run app/app.py from the repository root.