02 · BackfileBackfile

What it does

Backfile finds the card you already cut.

Backfile is a desktop app for policy debaters. It indexes the evidence you already own, reads an opponent’s case, and ranks your own cards as answers, so prep time goes to arguments instead of file searches.

Backfile prep flow: files in, knowledge base, opponent doc to ranked counter-evidence

02 · The gap

Policy debaters carry thousands of cards, and most of prep goes to finding them.

Before Backfile, finding one meant Ctrl-F across folders of Word docs, partner drafts, camp packets, and caselist dumps. As a 2AC, I spent more of my prep on file organization and card hunts than on strategy.

None of that work made anyone a better debater; it only used up the time that could have. Backfile exists to give that time back.

03 · The Parser

The parser comes first, and everything else depends on it.

No two debate documents are formatted alike: hand-formatted Verbatim files, partner drafts in someone else’s style, camp packets with their own heading conventions, and caselists pulled from other teams. The parser reads all of them and rebuilds the same hierarchy on the other side, from pockets, hats, and blocks down to tags, cites, card bodies, and highlighting.

It works by structural rules with no AI calls, so the same file parses the same way on every machine. Verbatim heading styles are checked first, and a content-based fallback handles files that weren’t made in Verbatim.

When I audited it against a 4,580-file corpus, I fixed six classification bugs and ended silent text loss in 12% of files (6.66 million characters), which recovered 1,809 cards. The parser now ships with a 125-test suite, 22 of them regression tests from that audit.

  • ▪Rule-based, deterministic
  • ▪Verbatim and non-Verbatim files
  • ▪No AI in the parse path
  • ▪125 tests, 22 from the audit
Backfile architecture diagram: input documents flow through the parser into Stacks and Scout

04 · The rest of the stack

What the parser makes possible.

Stacks

Search every card.

Every parsed card lands in a local SQLite knowledge base with FTS5 full-text search. Results rank tags and cites first and highlighted text second.

Scout

Get the counter.

Drop in an opponent’s 1AC. Scout reads the positions in it (disadvantages, kritiks, counterplans, topicality, and case arguments) and ranks your own cards as answers, down to the line-by-line. The evidence is AI curated, not AI written.

Export

Ready for your speech.

Curated arguments export with Verbatim heading structure, highlighting, and pocket and hat hierarchy intact, so they drop into a speech document without reformatting.

05 · The product

A prep tool, built for the hours before the round.

Brief · Parse a debate document
Backfile Brief view: a parsed 1AC with cards, tags, cites, and highlighting preservedStacks knowledge-base view with search results across 50,352 cardsScout setup view: drop in an opponent doc, then set the side and analysis modeScout results view with ranked response cards against an opponent 1AC

Screens from the Mac desktop app, available at backfile.app. Hover the rotator to pause; click a dot to jump.

06 · Story

I built it because I got tired of finding cards instead of writing arguments.

How it started

I debated policy at McDonogh School in Maryland, a national-circuit program, and I was the 2AC. In theory, the job was to think hard, pick the right argument, and win the round.

In practice, most of my prep went to hunting through Word docs for cards I knew I had.

Senior year I moved into coaching and watched Tournament of Champions-level debaters lose the same hours to the same searches. I started building Backfile in March 2026 as the tool I wanted back then.

It’s local-first because debate files are sensitive, and it’s a prep tool, not something you run in the middle of a round. It’s also Mac-only for now, with about 14 registered beta users.

07 · Receipts

What’s shipped, what’s under the hood.

1,809
cards recovered in the parser audit
125
tests in the parser suite
4,580
files in the audit corpus
~14
registered beta users

Shipped

  • Mac desktop app with account sign-in, annual billing, and an in-app auto-updater
  • Three subsystems: Brief (the parser), Stacks (the index), and Scout (the AI advisor)
  • Line-by-line engine rebuilt from user feedback, with model calls cut from 4 to 3
  • First inbound user who found it through a web search

Under the hood

  • Flask and HTMX desktop app, migrated from Streamlit
  • Local SQLite knowledge base with FTS5 full-text search
  • Rule-based parser with no AI calls
  • Claude for Scout’s analysis and ranking

08 · Where it lives

Try it at backfile.app, or keep going to GPM-AI.

Next project