MainFrameBook a demo

MainFrame

Ask about your district.
Get answers with the sources.

Plain-English answers on issues, coverage, polling and talking points, built from the reports and sources you select. For independent campaigns and their backers.

Illustrative MainFrame chat: a question about District 00 with three sources selected, and a three-point answer with the steps it took (fictional data)

Five kinds of evidence. One set of rules.

Online discussion

Public conversation by subreddit and keyword.

News coverage

Syndicated wire stories grouped, so repetition isn’t consensus.

Your polls

Import completed polls; review columns and weights first.

Voter files

Segment the voter file you’re entitled to use.

District data

US House district and state data, in context.

Works alongside what you pay for

Keep your pollster and your voter file. MainFrame adds what they don’t cover: current discussion and news coverage, analysed the same way every time, beside your own poll.

CapabilityPollsterVoter-file vendorGeneral chatbotMainFrame
Fielded poll of voter opinionAlso: PollsterYes––Imports yours
Voter list with licensed fieldsAlso: Voter-file vendor–Yes–Uses yours
Current online discussion and news coverageAlso: General chatbot (partly)––PartlyYes
Same analysis on every report–––Yes
Saved reports, so you can see what changed–––Yes
Claims linked to their sourcesAlso: General chatbot (sometimes)––SometimesYes
Segments with draft messages for each–––Yes

Four jobs, one private workspace

Ask in plain English, see the sources

Ask about a district, an issue or a poll, and pick which feeds, polls and reports to answer from. The assistant searches them, builds a report or chart, shows every step it took, and can answer across the reports you've already run.

How we define a district

A briefing, not a hot take

Online discussion, news coverage and your polling become one briefing by theme, with perspectives side by side. Agreement lists its sources; a disagreement is reported only when there are two real positions. Every finding cites the original, and prioritized actions close each report — export to PDF or HTML.

Read a sample briefing

See how heated an issue is

Ideology, tone, controversiality, constructiveness and cross-partisan engagement each sit on a named scale, and a missing reading is left out, never shown as zero. Recurring phrases are quoted exactly, never attributed to an account. Syndicated stories are grouped, so one wire story doesn't read like consensus. Discussion isn't a poll — it sits beside yours.

Read the method note

Talking points grounded in what you learned

Segment the voter file you're entitled to use, view it by map and profile, and build personas. Draft message variants per segment, compare them side by side, and check "Context used" for the sources behind each draft. Export the messages you pick to Word, or each segment's list as CSV.

What MainFrame replaces, and what it doesn't
Illustrative MainFrame chat answer with a bar chart of discussion volume across five reports (fictional data)

Four jobs, one private workspace

Ask in plain English, see the sources

Ask about a district, an issue or a poll, and pick which feeds, polls and reports to answer from. The assistant searches them, builds a report or chart, shows every step it took, and can answer across the reports you've already run.

How we define a district

A briefing, not a hot take

Online discussion, news coverage and your polling become one briefing by theme, with perspectives side by side. Agreement lists its sources; a disagreement is reported only when there are two real positions. Every finding cites the original, and prioritized actions close each report — export to PDF or HTML.

Read a sample briefing

See how heated an issue is

Ideology, tone, controversiality, constructiveness and cross-partisan engagement each sit on a named scale, and a missing reading is left out, never shown as zero. Recurring phrases are quoted exactly, never attributed to an account. Syndicated stories are grouped, so one wire story doesn't read like consensus. Discussion isn't a poll — it sits beside yours.

Read the method note

Talking points grounded in what you learned

Segment the voter file you're entitled to use, view it by map and profile, and build personas. Draft message variants per segment, compare them side by side, and check "Context used" for the sources behind each draft. Export the messages you pick to Word, or each segment's list as CSV.

What MainFrame replaces, and what it doesn't
Illustrative MainFrame chat answer with a bar chart of discussion volume across five reports (fictional data)
Illustrative MainFrame report excerpt with a citation tooltip naming the press article and outlet, and the engine and models recorded for the report (fictional data)

METHOD

Intelligence you can check

Every finding links to the original article, thread or dataset, and every metric prints its named scale. A feed whose lean is unknown is labeled Unknown and left out of averages, never counted as center. Each report records the engine and models that produced it. People review poll imports before they’re saved, and pick which message drafts to keep.

Built for small teams doing the research

Built for small teams doing the research

In 2025 a record 45% of Americans identified as political independents (Gallup). Independent campaigns rarely have a research desk. Campaigns, backers, analysts and pollsters each work in a private organization; a poll is shared only if its organization chooses.

In 2025 a record 45% of Americans identified as political independents (Gallup). Independent campaigns rarely have a research desk. Campaigns, backers, analysts and pollsters each work in a private organization; a poll is shared only if its organization chooses.

Hear the district before you knock

Know what residents and local coverage are saying this week, what moved since your last report, and which phrases keep coming up. Import your pollster's completed poll, weights included, and walk into the forum with the report's suggested actions.

“What are people in District 00 asking about the levy?”

See your first week
Illustrative trends view: topics marked emerging, fatiguing or new since the last report, beside a report's suggested actions (fictional data)
Illustrative MainFrame workspace for the fictional Riverbend Civic Network: organization and project switchers, the sidebar, and a project with its objectives

Your first week

YOU DO

Pick the issues, places and date ranges you care about.

Import your latest poll and check how each column was read.

Choose which drafts to keep, then export for your team.

MAINFRAME DOES

Collects discussion by subreddit and keyword, and coverage by keyword, concept and location.

Groups, measures and cites it in a report by theme.

Segments your voter file and drafts messages per segment.

What it replaces: part of a research contractor’s briefing work, and part of the list work you’d do by hand. What it doesn’t replace: your pollster. It drafts messages, but doesn’t test them with voters or forecast races.

Read the work before the demo

Read the work before the demo

Sample briefing: the Bay Area regional transit measure (opens in a new tab)

A real MainFrame report, exported as is for a fictional client: 45 days of press and r/BART discussion on the November transit measure, grouped by theme, with where sources agree and differ.

Sample briefingPDF
Thumbnail: first page of the sample briefing PDF on the Bay Area regional transit measure

News coverage, public Reddit discussion, district data and what you bring: how each is collected, how lean is labeled, and what MainFrame doesn't do with it.

DataMethod
Thumbnail: a sheet titled Where the data comes from listing news coverage, online discussion, district data, and your polls and voter files

Fourteen questions for any vendor, including us: where sources come from, what happens to your Aristotle or L2 voter file, how lean is labeled, and who can see your data — each with MainFrame's own answer.

GuideChecklistVoter files
Thumbnail: a checklist page titled Ask before you buy

Straight answers

We already pay for a pollster, a voter file and a chatbot. Why add this?

Is MainFrame partisan?

Is MainFrame a political party, or connected to one?

Where does the data come from?

Does it predict elections?

Who can see our data?

Bring your district.
We’ll show our work.

In the demo, we build a cited briefing on an issue and district you name.

MainFrame is software built by Junction and isn’t affiliated with any political party. Product images show illustrative data.