Africa Chess League
One continent, one board — a pan-African chess league played on Lichess and settled on one table.
- Platforms
- Data & Research
- Registered players
- 300+
- African federations
- 17
- Games recorded
- 8,858
- Countries in one event
- 11

Research
Bulawayo, Zimbabwe/ CAT
Founder · Researcher · Systems Builder
I turn complex information into tools people can decide with — a pan-African chess league, farm decision systems and a national cost-of-living index, built from research up.
Building → Africa Chess League — 17 federations
(01)Introduction
Chess players registered
African countries reached
Price observations indexed
Official indicators tracked
Years of crop & climate data analysed
Research preprints published
Figures from the live products and papers, September 2026.
(02)Selected work
One continent, one board — a pan-African chess league played on Lichess and settled on one table.

Agricultural decision support that weighs every crop against your land, your water and your season.

“What will life actually cost me?” — a cost-of-living intelligence layer for Zimbabwe.

Zimbabwe’s information portal — news, jobs, exchange rates, fuel prices and live radio in one place.

(03)Deep dive — Africa Chess League
League API
Fastify + MongoDB. Owns competition structure, scoring and derived standings.
Lichess sync worker
Polls results, rebuilds team scores and logs any drift from Lichess’s own.
News pipeline
Python scrapers for three African chess sources, twice a day, new stories only.
Open data
Participation, growth and rating distributions, published as they happen.
(04)Research & publications
Entrants per AFCL arena
4 → 11
Countries per event, across twelve arenas
Returning entrants by arena
4 mo
Of closed-beta testing before public launch
Seasons with agricultural drought stress
p = 0.96
No significant trend in seasonal rainfall (+0.18 mm/yr)
(05)Tech stack
Fast, accessible front ends that work on a cheap phone as well as a desktop.
APIs that validate at the edge, refuse to boot on bad config and keep secrets server-side.
The right store for the shape of the data — documents, relations or a single SQLite file.
Reproducible analysis, and AI that is grounded in data and tested against refusal and injection.
Free-tier-first infrastructure, automated jobs, and tests that run before anything ships.
Third-party platforms wired in carefully — rate limits, caching and fallbacks included.
Free-tier first
GROW, ZiMINDEX and Mbele are engineered to run on free infrastructure — without cutting corners on tests, security or accessibility.
Vercel, Render, Cloudflare Workers, MongoDB Atlas, Turso and Supabase — with byte budgets and contrast audits built into the tooling.
(06)How I build
Where a price, a yield or a local condition is missing, the product says so. I would rather leave a gap than dress an estimate up as a fact — and I have removed features when the data could not support them.
I analyse the data first and design second. AFCL studies its own participation; GROW’s location-first approach came out of 24 years of provincial crop and climate records.
In Zimbabwe a gigabyte can cost $43.75. Page weight is an access problem, so I build for a cheap phone on a bad connection first — offline queues, small fonts, no wasted requests.
AI can read and extract; decisions run on pure, testable functions. Every figure should expand into the steps that produced it, so anyone can check the arithmetic.
People should get the answer before they are asked for an email address. Accounts exist for saving work, never as a gate in front of the useful part.
(07)Freelance
Available for freelance
Taking on a small number of freelance builds and research collaborations.
I take on a small number of projects at a time — platforms, data work and decision tools — for founders, NGOs, researchers and businesses who need someone to own the whole thing, from the question to the deployed product.
(08)Contact card
Flip it for a QR code that saves my details to your phone — or reach me directly.