All guides
Beginner45 min6 steps · 3 min read

Build a flashcard generator with AI

What you'll build: a tiny web page where you type a topic ("the water cycle", "7× times table", "Canadian provinces") and get a deck of flashcards your child can practice, with the answer hidden until they've made a real attempt to remember it.

Who it's for: any parent. You will not write code from scratch. You'll describe what you want to an AI editor and paste in the prompt below.

Before you start

Open a free AI-assisted editor. v0.app, Claude, or Cursor all work. These let you describe an app in plain English and get a working page back. You don't need an account anywhere else, and nothing here costs money. Keep this guide open beside it.

Jargon, defined once: Spaced repetition just means reviewing a card again right before you'd forget it. Retrieval means making the brain pull the answer from memory instead of just re-reading it. Both are the difference between a deck that teaches and one that entertains.

Step 1. Describe the page

In your AI editor, paste this:

Build a single-page flashcard app. A text box at the top lets me type a topic. A "Make cards" button generates a stack of flashcards below. Each card shows only the question. There is a "Show answer" button on each card, the answer stays hidden until I press it. After the answer shows, give me two buttons: "Got it" and "Review again". Keep it clean, large text, works on a phone. No login.

Step 2. Wire in the card content

Tell the editor where the cards come from. Paste the generation prompt below, this is the instruction your tool will send to the AI each time:

You are a learning-science tutor making flashcards for a child.
Topic: {TOPIC}
Make 8-12 flashcards. Rules:
- Each card has a short "question" and a short "answer".
- The question must force recall, not recognition. no "true/false",
 no multiple choice. Ask "What…", "Why…", "How…".
- One idea per card. Plain words a 7-year-old understands.
- No card should be answerable by guessing.
Return the cards as a JSON list: [{ "question": "...", "answer": "..." }]

Step 3. The "ask first" rule

This is the one rule that makes it teach. Tell the editor:

The answer must never be visible until the child presses "Show answer". Do not show answers in a list. Do not auto-reveal.

Step 4. Add the review loop

Tell the editor:

When I press "Review again", move that card to the back of the stack so it comes around once more this session. When I press "Got it", set it aside. The session ends when every card is "Got it".

Step 5. Make it kind

Add a small progress line: "3 of 10 mastered". When the deck is finished, show one short, calm message like "Done for today." No streaks, no confetti, no sounds.

Test it

Type a topic your child is actually studying this week. Generate the deck. Check three things: (1) every card hides its answer until you click, (2) "Review again" really brings the card back, (3) the questions make you think, not just recognize. If a card is guessable, regenerate, your generation prompt is the lever.

The one guardrail to add before your child uses it

Force the retrieval attempt. Add a rule that the "Show answer" button is disabled for 3 seconds, or only appears after the child taps "I have my answer". That tiny pause is the whole point, it converts the tool from a glorified answer key into actual practice. Build the value in before they ever touch it.

This guide recreates a tool we already run for free.

Validate your idea first