
Studying for the citizenship test shouldn’t feel like a flashcard pile.
Civik turns all 128 official USCIS civics questions into daily streaks, XP, and spoken mock interviews in the real test’s 20-question format. I designed it and vibe-coded it with AI as a personal project. The public test is open for anyone preparing for the interview.
Context
A new test, and study tools built for the old one.
In October 2025, USCIS replaced the civics portion of the naturalization test. The question bank grew to 128, an officer asks up to 20 of them out loud, and the test stops as soon as you reach 12 right or 9 wrong.
Civik is my take on how you’d actually prepare for that: an app that teaches the material, explains every answer, and then rehearses the interview itself. It’s a personal project I designed and vibe-coded with AI, from the first commit to an iOS build in four days.
The problem
Recognizing an answer isn’t the same as being able to say it.
A list of questions with the answer printed underneath helps you recognize the right answer. The interview asks you to produce it, out loud, to a person, with nothing on screen. Multiple choice can bridge that gap, but only when the wrong options are plausible; filler options let you pass by elimination without learning anything.
- 01
How do you make 128 questions feel doable instead of like a pile?
- 02
How do you make a wrong answer teach something, instead of just costing a point?
- 03
How do you rehearse a spoken interview when there’s no one to ask you the questions?
Key decisions
Six choices that shaped the app.
A path, not a pile
The 128 questions are split into six modules that unlock in order. Each lesson is 8 questions with 5 hearts and 3 tries per question, and getting 60% right on the first try opens the next one. Leaving mid-lesson asks first, because that attempt won’t be saved.


Every wrong answer explains itself
A wrong pick gets two notes: why that option isn’t it, and why the right one is, with every other accepted answer listed. The wrong options are hand-written for each question and stay the same on every attempt, so a miss teaches the same lesson twice instead of rolling new filler.


Rewards that track real progress
Praise changes with your streak. Anything you miss goes to a review queue the moment you miss it, and only leaves once you answer it right on the first try.


Rehearse the real format
The mock interview draws 20 random questions from all 128 and needs 12 correct, like the real test. The spoken mode goes further: a synthesized voice asks each question and you answer into the mic (see it in the recordings below).


Only show the 65/20 track to people who qualify
Applicants who are 65 or older with 20 years as permanent residents study just 20 marked questions and are asked 10, needing 6 right. Most people don’t qualify, so the track stays hidden until you turn it on in Settings.


An independent tool, not an official one
Early builds borrowed USCIS language: “Official”, “officer”, “naturalization”. I stripped it from the interface so Civik never reads as a government product. It helps you prepare for the official test and says so plainly.
Inside the app
Learn it, review it, then sit the interview.
The tabs map to the ways people actually prepare: a guided path for first-timers, a no-pressure study list for review, and mock interviews, typed or spoken, that follow the real format.
Lesson
Multiple-choice questions, one at a time, with a Check Answer step before moving on.
Mock Interview
The 2025 exam format, 20 questions asked at random and 12 correct to pass, with instant feedback.
Spoken Interview
A simulated interviewer asks each question out loud, and you answer by speaking, just like the real thing.
Study
Every question and its accepted answers by category, with a short note on why each answer is right.
Amendments
All 27 amendments, each with its purpose, history, and the civics questions it shows up in.
Mastery Tracker
Accuracy, study streak, and mastery by category, plus a review queue built from missed answers.
Build log
Vibe-coded in four days.
I built Civik by directing AI: describing each screen and rule, then reviewing and correcting what came back. The code came fast. The judgment calls (what a wrong answer should say, what counts as passing, what to leave out) were the actual work.
4
Days from first commit to an iOS build.
63
Commits in the app’s history.
18
Of those spent on answer quality alone.
9
Beta-tester review passes, five of them over all 128 questions.
Day 1
43 commits
The whole core, then the hard part
Lessons, Study, the mock interview, and a spoken interview with a real voice, an open mic, and forgiving number matching. Most of the day went into the wrong answers: audited, made the same on every attempt, and exported question by question for manual review.
Day 2
2 commits
Hand-written distractors
Two commits, but the biggest content change: I replaced every generated wrong answer with one written for its question, so none of them can be ruled out on sight.
Day 3
16 commits
From Honest Abe to Civik
The app started as Great Abe, became Honest Abe, and landed on Civik with the felt top-hat logo. Official-sounding language came out, and Settings (65/20, reset, privacy), dark mode, and a desktop layout went in.
Day 4
2 commits
Native on iOS
Wrapped the web app with Capacitor so it runs as a native iOS app, and fixed full-width layout on larger phones.
Light, dark & desktop
One app on a phone and a laptop, in light or dark.
The theme follows your device unless you pick one in Settings. On a wide screen the bottom tabs move into a sidebar, so the same app works as a website too.




Brand guidelines
A felt top hat and a friendly script.
Civik’s mark is a soft 3D hat rather than a flat icon, so the guide measures its proportions instead of drawing construction lines. The palette comes straight from the app’s theme, light and dark.


The actual test
What you’re really studying for.
128
Official civics questions, published by USCIS.
20
Questions at most, asked out loud. The officer stops at 12 right or 9 wrong.
12
Correct answers needed to pass the civics portion.
2
Chances per application. Fail once and you’re retested 60–90 days later.
What’s next
What testing turned up, and what comes after it.
- 01
End the mock interview the way the real one ends
Right now it always asks all 20. The 2025 test stops at 12 right or 9 wrong, and the mock should too.
- 02
Make accuracy agree with the review queue
Accuracy only counts finished lessons, so a question missed in a mock or an abandoned lesson sits in review while accuracy still reads 100%.
- 03
Link to any screen
On the web, opening a lesson or tab directly still 404s instead of loading the app there.
- 04
Widen the beta
Once the review algorithm and spoken mode hold up with the current testers, share it more widely.
Closing note
Public testing is open. Try Civik yourself.
Civik is available for anyone preparing for the U.S. citizenship interview. Try the live test and send me feedback if you find a rough edge.