Logo Lanfrica

declerke/Africa-Dev-Forecast

Domain:

socioeconomic

Record type:

software
Creator:
dec
Host:
# 🌍 Africa Development Trajectory Forecaster **A production-grade Streamlit intelligence dashboard that fetches 8 World Bank development indicators for 15 African countries (2000–2023), trains 109 Prophet time-series models to forecast each indicator to 2033, clusters countries into 3 development tiers using K-Means, and surfaces the results through an interactive 4-tab dark dashboard β€” answering the core planning question: "Where will Kenya be in 2033?"** | Metric | Value | |---|---| | Historical rows | 360 (15 countries Γ— 24 years) | | Year range | 2000 – 2023 | | Indicators tracked | 8 | | Prophet models trained | 109 | | Forecast horizon | 10 years (to 2033) | | K-Means clusters | 3 (Advanced / Emerging / Developing) | | Dashboard tabs | 4 | | Lines of code | 1,208 (app.py) | | Data cost | $0 (World Bank REST API) | | Dashboard cost | $0 (Streamlit Community Cloud) | --- ## 🎯 Project Goal Development economists, policy analysts, and researchers need a single view that combines historical trajectories, future projections, and cross-country positioning for Sub-Saharan and North African economies. This project answers three specific questions: 1. **Trajectory** β€” How will Kenya's GDP per capita, electricity access, internet penetration, life expectancy, urbanisation, trade openness, and under-5 mortality evolve to 2033 under a data-driven Prophet forecast? 2. **Positioning** β€” Which development cluster does each country belong to, and how does Kenya compare to its EAC-5 peers and to South Africa as an upper-middle-income benchmark? 3. **Benchmarking** β€” Across all 8 indicators simultaneously, where does each country stand relative to the rest of the dataset? The dashboard is designed to work with real World Bank data fetched fresh from the REST API β€” no synthetic values, no estimates, no interpolated series. --- ## 🧬 System Architecture ``` World Bank REST API v2 β”‚ β–Ό data_pipeline.py β”œβ”€β”€ fetch_indicator() β€” paginated REST fetch per indicator per cou …