Anki Interactive Cards – Choice and sentence-builder cards

AnkiWeb addon 334923313

Creates single-choice, multiple-choice, and sentence-builder note types with interactive self-checking templates, shuffled options, distractors, and optional generation from existing vocabulary, while leaving scheduling and ratings untouched.
AI-generated summary; may contain mistakes.

card-creationcard-templatesquizmobile-compatible

Open on AnkiWeb GitHub Ask about alternatives

AnkiWeb

Votes
0 (👍 0 · 👎 0)
Updated
2026-10-28
Anki versions
26.09.3~
Languages
Python, JavaScript, CSS, JSON
Description language
en

Maintenance

active

  • Last update or commit: 2026-10-28 (4 days before the snapshot).
  • Test files: 4.
  • Commits in the last year: 11.
  • Issues: 0 open, 0 closed.
  • Pull requests: 0 open, 0 merged.

Will it work on my Anki?

Version branches
Min AnkiMax AnkiUpdated
26.0926.09.3+2026-10-28
History across monthly snapshots

Loading…

Similar addons

MCQ Generator

Creates and reviews single- and multiple-choice questions in Anki with an exam-style interface showing your selections, correct answers, color-coded feedback, and optional explanations.

card-creationreview-flowcard-templatesquiz

7 votes 25% approval 👍 4 · 👎 3 ⭐ 3 Anki 23.10~ Updated 2026-01-07
Anki Japanese Crossword Generator

Generates printable A4 and interactive Japanese crossword puzzles from Anki vocabulary in both directions, with customizable clues, previews, answer keys, history, and solved-note tagging.

exporttaggingquiz

1 votes 21% approval 👍 1 · 👎 0 ⭐ 2 Anki 2.1.1~ Updated 2026-08-21

Description

Create interactive choice and sentence-building cards

Anki Interactive Cards (AIC) adds guided authoring tools and self-contained interactive card templates to Anki Desktop.

Create text or image choice cards, multiple-choice exercises, and sentence-building cards with word tiles, typing, or both. Cards provide immediate feedback, but only you choose Again, Hard, Good, or Easy.

Included card types

  • AIC · Single Choice — choose one correct text or image answer.
  • AIC · Multiple Choice — select every correct answer; the full selection must be exact.
  • AIC · Sentence Builder — build a target sentence with shuffled word tiles, typing, or both. Optional distractor tiles are supported.

Requirements

  • Anki Desktop
  • No additional Python packages, Node packages, system libraries, accounts, or cloud services

AIC uses Anki's included Python/Qt runtime. The interactive HTML, CSS, and JavaScript are embedded in the note types, so created cards can sync to other Anki clients.

First-time setup

  1. Back up your Anki collection.
  2. Install the add-on and restart Anki.
  3. Open Tools → Interactive Cards · Card Workshop once. This creates the three AIC note types.
  4. Open Anki's Add window and select an AIC note type.
  5. Enter the prompt, then click AIC · Answers in the editor toolbar.
  6. Configure the answers and click Apply.
  7. Return to Anki's normal Add window and click Add to save the note.

The AIC answer dialog prepares note fields; it does not create a separate Anki note itself.

Interface language

The interface and newly created card templates use English by default.

To use German, open the add-on configuration and set:

{
  "ui_language": "de"
}

Restart Anki, then choose Tools → Interactive Cards · Update templates. This explicit update applies the selected language to the AIC card templates that sync with your decks.

Set "ui_language" to "en" and repeat the template update to return to English.

Daily authoring workflow

  • Create a card in Anki's normal Add window.
  • Use AIC · Answers to configure options, correct answers, sentence tokens, alternatives, modes, and optional distractors.
  • Add an explanation, prompt image, audio, and tags in Anki's normal editor.
  • To edit one existing AIC note, select it in Anki's Browser and choose Notes → Interactive Cards · Edit selected note.
  • To generate exercises from existing vocabulary, open Interactive Cards · Card Workshop → Generate from existing vocabulary.

Review generated distractors carefully, especially where answers may be synonyms or ambiguous.

Important behavior

  • No cloud service, telemetry, or external runtime dependency is used.
  • AIC does not alter FSRS, scheduling, review history, or card ratings.
  • Choice options and word tiles are shuffled when shown.
  • Sentence alternatives are supported. Letter case and final punctuation are ignored; spelling and accents remain meaningful.
  • Creation and editing require Anki Desktop. Test interactive behavior on every target client before broad use.

Updating existing templates

Interactive Cards · Update templates replaces existing AIC templates and may overwrite personal template customizations. A template backup is created first. Use a backup or disposable profile when updating.

License

Licensed under the GNU Affero General Public License, version 3 or later (AGPL-3.0-or-later).

Source code and issues

Source code, installation guidance, and issue reports are available through the Support Page.

README

Anki Interactive Cards

Version: 1.2.1 Platform: Anki Desktop (Python/Qt 6 add-on for authoring; HTML and JavaScript cards for review) Interface language: English by default; German available through add-on configuration License: AGPL-3.0-or-later

Anki Interactive Cards (AIC) adds interactive note types to Anki. It uses Anki's normal scheduler, including FSRS: it never assigns ratings, rewrites learning progress, or calls a network service. Learners still choose Anki's native Again, Hard, Good, or Easy rating.

Requirements and installation

No Python, Node.js, or system packages are required beyond a compatible Anki Desktop installation. AIC uses only Anki's bundled Python/Qt runtime and the HTML/JavaScript embedded in its card templates.

  1. Back up the collection and close Anki.
  2. Download anki-interactive-cards-1.2.1.ankiaddon.
  3. In Anki Desktop, choose Tools → Add-ons → Install from file… (the label varies with Anki's interface language), select the archive, and restart Anki.
  4. On a first installation, open Tools → Interactive Cards · Card Workshop once to create the note types.
  5. In Add, select AIC · Single Choice, AIC · Multiple Choice, or AIC · Sentence Builder. Click AIC · Answers in Anki's formatting bar, define the answers, click Apply, then use Anki's normal Add button.

The answer dialog does not create a card by itself. It validates and prepares the AIC fields; Anki creates or saves the note. When editing one existing AIC note in Anki's browser, applying the dialog writes the updated AIC fields to that note. If the toolbar button is missing, confirm that the add-on is enabled and restart Anki.

To use German card copy, open the add-on configuration in Anki, set ui_language to "de", restart Anki, and choose Tools → Interactive Cards · Update templates. The explicit update replaces AIC card templates so the synced cards use the selected language. Set ui_language to "en" and repeat the update to return to English. Note type names and stored field names never change.

For an update from 1.1.0, create a backup first. Existing note data is preserved; Distractors is added as needed. To apply the new sentence-builder templates to existing note types, choose Tools → Interactive Cards · Update templates. This deliberately replaces the affected HTML/CSS templates, after creating a JSON backup in user_files/template_backups/; it does not change field content or scheduling data. Reopen Add after an update so Anki reloads the editor view.

Included card types

Type Example Interaction
Single Choice / text das Haus → la casa / il libro / … Select one answer and receive immediate feedback.
Single Choice / images la casa → four images Select a locally stored image.
Multiple Choice “Which terms are nouns?” Select any number of answers and submit the complete set.
Sentence Builder Ich bin zu Hause → sono a casa Arrange word tiles, type an answer, or use both modes.

Answer choices and sentence tokens are shuffled when a card is shown. Sentence alternatives are supported. Case and terminal ., !, and ? are ignored; accents and spelling remain significant.

Sentence Builder distractors

Use AIC · Sentence Builder, enter the prompt, open AIC · Answers, then enter the target sentence. Add one wrong word tile per line under Wrong word tiles and select Word tiles and typing or Word tiles only. The tiles are shuffled; learners need not use every tile. A distractor must not have the same text as a required correct token, otherwise the card cannot distinguish them. Existing sentence-builder notes without distractors continue to work.

Authoring notes

The ordinary editor keeps Prompt, Explanation, Prompt Image, and Audio visible. Technical fields such as Options, Correct, Media References, Answer, Tokens, Alternatives, Mode, Distractors, UID, and Source ID remain stored but are collapsed by default. Use AIC · Technical only for diagnosis or intentional low-level editing.

The separate Card Workshop is an alternative authoring UI. It can create a card manually or generate selection cards from existing vocabulary notes. For a generation run, select the source note type, source deck, question and answer fields, optional image/audio fields, target deck, card type, and number of distractors. The source notes are never changed. Generated cards have a source ID; a later run skips them by default or can update their content without resetting scheduling. A run is limited to 5,000 source notes. Review suggested distractors, because the simple text-length/word-count heuristic does not prove semantic suitability.

Images selected in AIC are copied into Anki's media collection, never stored as absolute local paths. Audio can be imported with Choose audio… or referred to as [sound:file.mp3] if it already exists in Anki's media directory.

Mobile, AnkiWeb, and safety boundaries

The add-on itself runs only on Anki Desktop. Cards created with it can sync to other clients because their templates live in the note types. Complex cards are best created and edited on Desktop. JavaScript card behaviour is not guaranteed by every current or future Anki client, so test the card types, distractors, and answer display on the learner's target devices before a broad rollout.

AIC has no cloud service, telemetry, or runtime third-party dependency. It does not alter FSRS, scheduling, lapses, or card ratings. An answer judged correct by the template does not automatically select Good. Import only decks from sources you trust: Anki card templates can contain JavaScript, which is a general Anki trust boundary rather than a special AIC permission.

Foundation package for deck-generation agents

templates/aic-foundation/AIC Foundation.apkg is a version-pinned base for an agent that builds a complete .apkg without using Anki's editor. It contains the three AIC note types with their embedded templates, CSS, and JavaScript. It also deliberately contains three notes tagged aic-foundation::seed, so Anki exports the note types. A deck builder must import it into a temporary collection, create its requested notes, remove all seed notes and the empty AIC Foundation deck, then export the learner-facing deck without review history. See the shared Anki deck-creation agent guide for the field contract.

After changing templates, run:

just build-foundation
just verify-foundation

Development and release

just test          # 19 Python unit tests
python3 -m pip install playwright==1.64.1
just test-browser  # requires that package and /usr/bin/chromium
just check         # unit tests, syntax checks, and archive validation
just build

Playwright is a development-only test dependency. It is not required by the installed add-on and is not included in the release archive.

The release archive has __init__.py and manifest.json at its root and includes only runtime files, the full LICENSE, and the user_files marker. It excludes Git metadata, tests, caches, and user-created backups. Before sharing a release, install it into a backed-up test profile, restart Anki, and author and review one card of each type.

Further implementation and release details are in docs/README.md.

License

Licensed under the GNU Affero General Public License, version 3 or later (AGPL-3.0-or-later). The complete license text is in LICENSE.