Skip to content

An interactive dashboard for PlanCatalyst’s redesigned website forecasting country-level development.

Notifications You must be signed in to change notification settings

LlamzonAmazon/PC-Data-Dash

Repository files navigation

PlanCatalyst Data Dashboard

We're building an interactive dashboard for PlanCatalyst’s redesigned website that forecasts country-level development progress on:

  • UN SDGs (United Nations Sustainable Development Goals) – Human Rights & Gender Equity
  • ND-GAIN (Notre Dame Global Adaptation Index) – Climate Change Resilience
  • World Bank Data – Financial Capacity

We are exploring ML regression techniques using scikit-learn to forecast country-level development and NumPy to construct composite indexes. Azure automates the data pipeline, while Microsoft Power BI delivers the interactive frontend.

☁️ Azure Architecture

The Azure architecture of this project is still being designed & developed. Azure Architecture Diagram

📊 Data Pipeline Flow Diagram

Data Pipeline Flow Diagram

🏙️ Code Structure

PC-DATA-DASH/
├── .vscode/                          # VS Code configuration
│
├── data/                             # Data storage
│   ├── external/                     # Static external data
│   │   └── nd_gain_countryindex_2025.zip
│   │
│   ├── processed/                    # Processed data (in development)
│   │   ├── 
│   │   ├── 
│   │   └── 
│   │
│   ├── interim/                      # Cleaned/processed data
│   │   ├── nd_gain_interim.csv
│   │   ├── un_sdg_interim.csv
│   │   └── world_bank_interim.csv
│   └── raw/                          # Raw fetched data
│       ├── nd_gain_raw.csv
│       ├── un_sdg_raw.json
│       └── world_bank_raw.json
│
├── notebooks/                        # Jupyter notebooks (empty - for future EDA)
│
├── src/                              # Source code
│   ├── README.md                     # Source code overview
│   │
│   ├── config/
│   │   └── settings.yaml             # Pipeline configuration
│   │
│   ├── fetch/                        # Data fetching module
│   │   ├── README.md                 # Fetching documentation
│   │   ├── FETCHING.png              # Fetching flow diagram
│   │   ├── base_fetch.py             # Base fetcher interface
│   │   ├── fetch_factory.py          # Fetcher factory pattern
│   │   ├── fetch_data.py             # Main fetch orchestrator
│   │   ├── un_sdg_fetch.py           # UN SDG API client
│   │   ├── nd_gain_fetch.py          # ND-GAIN data fetcher
│   │   ├── world_bank_fetch.py       # World Bank API client
│   │   └── .env                      # Environment variables (gitignored)
│   │
│   ├── clean/                        # Data cleaning module
│   │   ├── README.md                 # Cleaning documentation
│   │   ├── CLEANING.png              # Cleaning flow diagram
│   │   ├── base_clean.py             # Base cleaner interface
│   │   ├── clean_factory.py          # Cleaner factory pattern
│   │   ├── clean_data.py             # Main cleaning orchestrator
│   │   ├── un_sdg_clean.py           # UN SDG data cleaner
│   │   ├── nd_gain_clean.py          # ND-GAIN data cleaner
│   │   └── world_bank_clean.py       # World Bank data cleaner
│   │
│   ├── pipeline/                     # Pipeline orchestration
│   │   ├── README.md                 # Pipeline documentation
│   │   ├── ORCHESTRATOR.png          # Orchestrator flow diagram
│   │   ├── orchestrator.py           # Main orchestrator class
│   │   ├── run_pipeline.py           # Pipeline entry point
│   │   ├── terminal_output.py        # Terminal output utilities
│   │   └── utils.py                  # Pipeline helper functions
│   │
│   └── processing/                   # Data processing & ML (in development)
│       ├── README.md                 # Processing documentation
│       ├── regression.py             # Regression models
│       └── forecasting.py            # Forecasting utilities
│
├── venv/                             # Python virtual environment (gitignored)
│
├── .env                              # Environment variables (gitignored)
├── .gitignore                        # Git ignore rules
├── requirements.txt                  # Python dependencies
├── Azure-Arch.png                    # Azure architecture diagram
├── Data-Flow.png                     # Data pipeline flow diagram
└── README.md                         # This file

📌 References/Resources

UN SDGs

ND-GAIN Index

World Bank Group

🌐 Team

This dashboard is made by Tech for Social Impact (TSI).

  • Project Managers: Thomas Llamzon, Anthony Lam
  • Developers: Adeline Lue Sang, Caroline Shen, Christina Wong, Kayden Jaffer, Tyler Asai

Contributors 3

  •  
  •  
  •