← All work

Analytics & rankings

Longitudinal performance intelligence

Twenty years of fragmented records, normalized into honest, comparable series.

The system

The source publishes walls of numbers with no verdicts. The system harvests two decades of longitudinal records and normalizes names, eras, and gaps into series a person can actually compare — on a map, ranked.

Honesty is enforced in the schema: floors are labeled as floors, coverage windows are stated, gaps stay gaps. Nothing is imputed.

The hard parts

Entity resolution across decades

A 216-entry alias map reconciles name drift across twenty years of records, so a series survives every rename and re-organization.

Zero-token harvesting

The pipeline is deterministic fetch-and-parse at polite pacing — a 530-request run completed without a single model call.

One codebase, any geography

The app is region-parameterized. The second region onboarded in days, on the same routes and the same schema.

In numbers

8,706
series rows
1,031
tracked entities
63
regional units · 2 regions
0
LLM tokens in the harvest

Next.js · MapLibre GL · Python

Happy to walk through this one properly — what it does, how it's put together, and what it would take to build something like it for you.

Vague is fine.

What kind of help? optional — pick any