a reproducible data product that measures how ready African youth (15–24) are for the digital economy.
# Youth Digital Readiness Index — Mapping Africa's Path to the Future of Work
A reproducible data product measuring digital economy readiness for African youth (15-24).
## Project Structure
```
Youth Digital Readiness Index/
├── data/
│ ├── raw/ # Raw downloaded data
│ ├── processed/ # Cleaned and transformed data
│ └── sample/ # Sample data for demo
├── etl/
│ ├── __init__.py
│ ├── ingest.py # Data ingestion from APIs/CSVs
│ ├── transform.py # Data cleaning and feature engineering
│ └── load.py # Database loading
├── db/
│ ├── schema.sql # PostgreSQL schema
│ └── migrations/ # Database migrations
├── models/
│ ├── __init__.py
│ ├── index_builder.py # Index construction (PCA + weighted)
│ └── validation.py # Model validation
├── app/
│ ├── app.py # Streamlit dashboard
│ └── requirements.txt # App dependencies
├── tests/
│ ├── __init__.py
│ ├── test_ingest.py
│ └── test_transform.py
├── scripts/
│ ├── setup_env.sh # Environment setup
│ └── sample_run.sh # Demo pipeline run
├── docs/
│ ├── methodology.md
│ ├── deployment.md
│ └── impact_statement.md
├── requirements.txt # Main dependencies
└── docker-compose.yml # Local PostgreSQL setup
```
## Quick Start
1. **Setup Environment**
```bash
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txt
```
2. **Setup Database (Optional)**
```bash
docker-compose up -d postgres
```
3. **Run Pipeline**
```bash
bash scripts/sample_run.sh
```
4. **Launch Dashboard**
```bash
streamlit run app/app.py
```
## Environment Variables
```bash
DATABASE_URL=postgresql://user:pass@localhost:5432/youth_readiness
WORLD_BANK_API_BASE=
api.worldbank.org
```
## Data Sources
- World Bank API (education, internet, mobile)
- ILO STAT (youth unemployment, NEE …