Skip to main content
The app is free and open source. You need a Google Gemini API key, which has a generous free tier. For large decks (hundreds of images), you may need multiple API keys or a paid quota plan. Visit ai.google.dev to get a free key.
JPG, JPEG, PNG, WEBP, and BMP images are supported. MP4 and AVI video files are also supported — the desktop app extracts frames from the video before sending them to Gemini.
Yes, for studying and quizzing. All decks are stored locally in decks.json. Scanning requires an internet connection to reach the Gemini API. Cloud sync requires internet and a Google login, but all data is stored locally first and sync is optional.
You can share your decks.json file directly — the other person can import it in the desktop app or on mobile. Alternatively, export the deck to Quizlet format (.txt) from the desktop app and share that file. See Export to Quizlet for details.
When Gemini cannot find an explicit visual clue in the image (highlighted answer, checkmark, filled bubble, etc.), it uses its knowledge to reason the most likely answer and marks the card with inferred: true. These cards get an automatic warning note. Always review AI-inferred cards before studying.
Yes. Images that don’t contain a recognizable question are skipped and logged as NOT_A_QUESTION. Title pages, logo slides, blank pages, and diagram-only pages are filtered out automatically. No action is needed on your part.
There is no hard limit. Images are batched into PDFs of up to 50 pages each and sent to Gemini as batch requests. For very large sets (500+ images), use parallel scan mode with multiple API keys — each key processes a separate pack of images simultaneously.
This is a Gemini API rate limit response. The app automatically waits and retries — it will recover on its own. Adding more API keys in Settings distributes the load and reduces wait time significantly. See Gemini API keys for guidance on adding keys.
Smart Merge compares the updated_at timestamp for each deck independently. The version with the newer timestamp wins. Edits on either device are safe as long as you do not modify the same deck on both devices between syncs.
No. The Google Drive sync transfers only question and answer data (decks.json). Local image_path values are preserved on each device and are never overwritten by sync. Images themselves are never uploaded to Drive.
Yes — that is the intended workflow. Sign in with the same Google account on all devices and use the Sync button to keep decks up to date across all of them.
For most cases, use full — it includes the question, all answer options, and the correct answer text. Use safe if your questions or options contain special characters (tabs, newlines) that would break Quizlet’s standard import parser. See Export to Quizlet for a full format comparison.
In Quizlet: CreateImport → paste the file content or upload the .txt file. Set the term/definition separator to match the format you chose. For the safe format, set the term/definition separator to {[(DapAn)]} and the card separator to {[(CauHoi)]}.

Troubleshooting

Solutions for common errors and issues

Configuration

Set up API keys and Google Drive sync

Build docs developers (and LLMs) love