AnkiWeb
- Rating
- 0 (π 0 Β· π 0)
- Updated
- 2026-09-19
- Anki versions
- 25.02~
- Description language
- en
AnkiWeb addon 317377085
Adds gradient text, bionic reading, random layout, read-aloud with karaoke highlighting, and progressive reveal to chosen note types, desktop runtime or baked for mobile.
Open on AnkiWeb GitHub Ask about alternatives
active
| Min Anki | Max Anki | Updated |
|---|---|---|
| 2.1.50 | 25.02+ | 2026-09-19 |
Loadingβ¦
Automatically highlights review card text in order at adjustable speed, improving readability of long sentences, with a hideable controller and English/Japanese word highlighting support.
Adds configurable colored gradients to text to improve readability, currently supporting Basic and Cloze notes and only <br> or <br/> line breaks.
Automatically reads card content aloud during reviews via neural text-to-speech, with offline system fallback, audio caching, text cleaning, and configurable speed, question, and answer settings.
Applies a reading format to selected Anki note types that bolds the beginning half of each word for faster reading, including on mobile.
Randomizes Japanese card review by changing fonts, swapping hiragana and katakana, displaying vertical text, and varying size.
Adds color gradients to text for improved reading focus in Anki 24+, editing HTML directly and configured by deck from Browse.
by drgmb Β· MIT license

Video version: docs/prisma-demo.mp4
An Anki desktop add-on that makes reading cards more active, on any note type you choose, without touching templates.
| Feature | What it does | |
|---|---|---|
| π | Color gradient (BeeLine) | Every line of text gets a color gradient; the end of one line has the color of the start of the next, guiding your eye across line breaks. Colors are drawn fresh for each card and stay readable in both light and dark themes. |
| π ± | Bionic reading | The beginning of each word is bold, anchoring your eye. |
| π | Random layout | Width, alignment, spacing and font size change on every showing, so you memorize the content rather than the visual shape of the card. |
| π | Read aloud | Reads the card with the system's speech synthesis, with adjustable speed from 0.5Γ to 2Γ, plus pitch, language and voice settings. |
| π€ | Spoken-word highlight | Karaoke style: the word being read lights up in amber. |
| π | Progressive reveal | The text appears word by word, in time with the speech. |
| π | Text size | Scale the whole card's text from 50 % to 300 %, globally or per note type. Works together with Random layout. |
Everything can be turned on or off globally and overridden per note type.
| Mode | How | Works on |
|---|---|---|
| Runtime (default) | The add-on injects the features into each card while it is shown. Templates are never touched. | Anki desktop |
| Baked | Tick Bake (mobile) for a note type and the add-on writes a marked block (style, preset, script) into that note type's templates. It syncs with the collection like any template edit, is refreshed every time you save the settings, and is removed cleanly when you untick it. | Anki desktop, AnkiDroid, AnkiMobile |
The block sits between <!--prisma:start--> and <!--prisma:end--> at the end of the template, plus a hidden marker at the top of the back template. Don't edit inside those markers; edit the settings instead.
prisma.ankiaddon from the latest release (also in dist/).prisma.ankiaddon.Tools β Prismaβ¦
en-US, pt-BRβ¦), voice name, how to read a cloze [...], initial delay.Ctrl+Shift+L; it is not shown in the menu).Global / On / Off per note type. Example: gradient everywhere, speech only on the English deck.Global or a percent), handy for dense decks or small screens.The same options exist as JSON under Tools β Add-ons β Config (documented there).
LEITURA_CONFIG), the add-on does not apply on top. This can be turned off.Samantha voice is the default; on other systems leave the voice name empty to use the first voice for the language.prisma/ the add-on (this folder is what gets zipped into prisma.ankiaddon)
dist/ packaged .ankiaddon
docs/ showcase GIF and MP4
demo/ the showcase generator (HTML timeline + headless-Chrome frame recorder)
prisma/
βββ __init__.py menu and shortcut
βββ config.py config load/save and per-note-type resolution
βββ injector.py Anki hooks: injects CSS + JS into the card HTML
βββ dialog.py settings window (PyQt6)
βββ templates.py bake mode: writes/removes the block in note-type templates
βββ config.json defaults
βββ config.md config documentation shown inside Anki
βββ manifest.json package metadata
βββ web/
βββ prisma.js the features, executed inside the card
βββ prisma.css styles for the highlight and the reveal
Tested on Anki 25.02.
Prisma is written and maintained by drgmb Β· https://github.com/drgmb. The injected blocks are signed with the author's name in comments and data-prisma-by attributes.
The features were ported from the author's own note template, inspired by Anki-Prettify, AnKing Note Types, BeeLine Reader and Bionic Reading.
cd prisma && zip -r -X ../dist/prisma.ankiaddon . -x meta.json '*.pyc' '__pycache__/*'
cd demo && npm install && node record.js record demo2.html && ffmpeg -framerate 30 -i frames/f%05d.jpg -c:v libx264 -pix_fmt yuv420p ../docs/prisma-demo.mp4