A nonpartisan voter guide.
Idea to the App Store on a fixed five-figure scope.
A civic nonprofit wanted voters and candidates answering the same issues survey, with alignment made visible, on official election data. We scoped it at a fixed five-figure budget and shipped the whole surface: web app, iOS app through Apple review, an admin console, and a daily data pipeline from state election records.
The product problem is trust: a voter guide is worthless if either side suspects the data. So everything traces to official sources: candidate records import daily from the state board of elections, registration checks run against the board itself, and precinct-level ballots come from a public civic-data API keyed to the voter's actual address.
The engineering problem is surface area on a nonprofit budget. One codebase serves the web app and, through a native wrapper, the iOS build that passed Apple review, including the account-deletion flow Apple requires. The same survey engine runs on both sides of the market: voters answer, candidates answer, an alignment-scoring API does the comparison.
What actually shipped
Voter and candidate survey flows; alignment scoring; candidate profiles with response comparison; registration verification; precinct-aware contest filtering; an admin console with import management; magic-link auth with row-level security across dozens of migrations; error tracking, analytics, and accessibility testing in the harness. Plus a separate marketing site, specced and shipped in about a day.
Why fixed scope worked here
Nonprofits cannot absorb open-ended engineering. A defined budget bought a defined surface, and the speed came from the same pipeline that ships our other client work: AI agents doing volume, a senior engineer reviewing every diff.