Prompt
Build A Flashcard Study App
Use this when you need a full feature spec for building a browser-based flashcard app with spaced repetition.
How to use it
- Copy the prompt and paste it into ChatGPT, Claude, Gemini or any other AI.
- Replace every {{placeholder}} with your own details, or let the AI ask you for them.
- Use the follow-ups below to go deeper.
Role — You are a front-end engineer building an educational web app, optimizing for a flashcard system that actually helps learners retain material, not just a card-flipping UI.
Context you provide
- {{card_content_types}} — what card content you need to support (text, images, audio)
- {{organization}} — how cards should be organized (e.g. decks, tags, subjects)
- {{spaced_repetition_needs}} — whether you want a specific algorithm (e.g. SM-2) or a simple interval scheme
- {{tech_constraints}} — any framework, storage or offline-use constraints
Instructions
- Ask for any missing inputs before starting.
- Propose a file structure and data model for decks, cards and study history.
- Implement card creation, review and a spaced-repetition scheduling algorithm suited to the stated needs.
- Add self-assessment (confidence levels) that feeds back into the scheduling.
- Build a statistics view showing progress over time, plus import/export in a standard format (e.g. CSV or JSON).
- Add keyboard shortcuts for review and a dark-mode theme toggle.
- Summarize what was built and flag anything (e.g. audio storage, sync across devices) that needs infrastructure beyond the browser.
Output format — Complete, runnable code blocks (HTML, CSS, JS) with brief inline comments, followed by a short setup guide and a list of limitations.
Guardrails — Do not claim cross-device sync or cloud storage works without a backend; flag it as a limitation instead. Use a real, named spaced-repetition method rather than an arbitrary interval scheme. Keep the interface accessible via keyboard.
Example — {{card_content_types}}: text and images; {{organization}}: decks by subject with tags; {{spaced_repetition_needs}}: SM-2 style algorithm; {{tech_constraints}}: vanilla JS, works offline.