Who Builds Africa — build story
An open, source-tracked database documenting foreign participation in African infrastructure across time — with an interactive map as the exploration layer. Live at who-builds-africa.vercel.app.
The question
Who finances, designs, and builds African infrastructure — and what's the evidence? The public conversation is loud and the evidence is thin. Claims about foreign involvement circulate as narrative; the underlying records — contracts, financing roles, equipment supply — sit in scattered reports, archives, and news articles, often pre-2000 and non-English.
I wanted a database that could hold the nuance: evidence over narrative.
What "builds" means (and doesn't)
The project is neutral by design. A participation record may be financing, designing, constructing, engineering, supplying equipment, consulting, developing, operating, maintaining, or a joint venture — and we never imply a company built an entire project if the evidence only shows financing or supply. Every role is explicitly labelled.
The product is the database
The map is the interface people see; the real product is the structured, auditable database behind it:
Schema first
JSON Schema + vocabularies + ER diagram. Missing and unknown dates are preserved explicitly — uncertainty is a field, never invented away.
Validation in the pipeline
pydantic + Frictionless validate every curated CSV. Nothing reaches a release without passing.
PR-reviewed data
Curated CSVs are the source of truth; every submission is reviewed like code. Versioned releases ship as CSV / GeoJSON / GeoPackage / SQLite.
Evidence per claim
Every material claim links to a source, a verbatim passage, and an evidence-strength label. Quotes remain © publishers; used as evidence only.
Decisions worth defending
Why not just scrape and visualize?
A map without provenance is a rumor with cartography. The database — versioned, citable, downloadable — is what makes it scholarship instead of content.
Why pre-2000 sources?
Most datasets start where convenient APIs start. History didn't. Archived and scanned sources are in scope from day one.
Why three licenses?
Code MIT, database ODbL-1.0 (attribution + share-alike), docs CC BY 4.0. Each artifact gets the license its community expects — with citation files built in.
What it taught me
Data modeling is an editorial act. Deciding what a "participation record" is — and what uncertainty looks like — shaped everything downstream.
Review culture applies to data. Treating curated CSVs like code, with PR review and validation gates, is how a one-person project stays trustworthy.
Open source is governance. CONTRIBUTING, CORRECTIONS, GOVERNANCE — the boring documents are what make collaboration possible.
Tech stack: Python (pydantic, Frictionless), JSON Schema, Astro + Svelte + MapLibre GL JS, OpenStreetMap, Vercel, MkDocs.