I built a voice agent that researches Wisconsin candidates and finds your polling place from the state election site. 6 days. Solo. For the
@elevenlabs @firecrawl hackathon.
Wisconsin has 28 races this cycle. 11 people are running for governor. A Supreme Court seat 12 days away. Marquette polled it β 38% of voters have heard nothing about the SC race. 53% undecided. The information exists. It's just scattered across 20 different sites.
So Ballot Badger searches them all at once. You say "tell me about Tom Tiffany." It fires 5 parallel
@firecrawl searches across
Congress.gov, OpenSecrets, PolitiFact, and WI news. 44 sources. Full page content, not just snippets. Claude Sonnet synthesizes it into structured findings.
The results render as cards: voting records, donor tables, fact checks, endorsements. Each one links to its source. It found that Tiffany criticized a "billionaire loophole" β then found that he had voted for the law that created it.
You can't make that up.
The voice part:
@elevenlabs ElevenAgents runs the whole conversation. 17 tools registered. All non-blocking β the agent calls a tool, it returns immediately, and the voice keeps talking while the data loads.
The part that blew my own mind: "Where do I vote?" The app opens a headless browser via
@firecrawl's Interact API. Navigates
myvote.wi.gov. Types my address into the form. Clicks search. Reads the results. Lafollette Elementary. Ward 113. 7 AM to 8 PM. April 7th.
That government site runs on
ASP.NET WebForms. Regular page.fill() doesn't work β the form needs real keyboard events. Had to use pressSequentially() to type each character, .blur() to trigger validation, and force:true on the click because
ASP.NET wraps buttons in invisible spans.
The architecture: ElevenLabs and Firecrawl run in parallel. Voice talks. Firecrawl searches. Cards build on screen. If the voice disconnects, the data still renders. If the data is slow, the voice fills the gap. Two independent pipelines. Same data.
Wisconsin votes April 7th. 28 races. 3 amendments. Nobody's going to research all of that. This does.
Check it out now!
badger-ballot.vercel.app
#ElevenHacks #CivicTech #WisconsinElection #voting #midterms