← All field notes
Fixed-scope build · Web + iOS

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.

Fixed scopeWeb + native iOSOfficial election datalive
App Store
live iOS listing, passed review
6,000+
candidates imported from official data
38
app screens shipped

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.

What this build proves
Small budget does not mean small surface. A two-sided product with official-data plumbing, a native app through Apple review, and an admin console, delivered on a fixed civic-sector budget.

Want a similar outcome?

Matt