AnkiWeb
- Rating
- 0 (👍 0 · 👎 0)
- Updated
- 2026-04-09
- Anki versions
- 2.1.66~
- Description language
- en
AnkiWeb addon 905251277
Persists card template settings across Anki Desktop restarts by saving them to a JSON file and re-injecting them before template scripts run.
Open on AnkiWeb GitHub Ask about alternatives
active
| Min Anki | Max Anki | Updated |
|---|---|---|
| 2.1.22 | 2.1.66+ | 2026-04-09 |
Loading…
Adds kanji readings, meanings, radicals, components, stroke counts and frequency data directly to existing Japanese Anki cards, with expandable breakdowns, themes, and synced mobile review.
Enables tracing symbols, Kanji, Kana, and letters on Anki cards with stroke-accuracy scoring, visual feedback, batch image importing, and mastery-based guide fading.
Adds visual Browser layouts, explorer-style navigation, tabs, drag-and-drop deck folders, colours, and a visual note-type manager with grid details, folders, and JSON import/export.
Uses Pygame to let Anki users practice writing Japanese kanji, grading stroke order and balance with hints and saved scores for about 6,500 characters.
Generates popup HTML with kanji keywords, readings, meanings, JLPT level, frequency, Koohii stories, example vocabulary, and stroke order for configured deck fields.
Keeps Nordic Aurora Note Type settings like Night Mode and animations persistently synchronized and instantly restored across devices and updates, but only works with that note type.
Interaktives Anki-Template zum Erlernen der japanischen Kanji-Schriftzeichen — mit echter Strich-Erkennung, deutschen Eselsbrücken und vollständiger Plattform-Kompatibilität.
<table align="center"> <tr> <td align="center"><img src="Media/demos/demo-guided.gif" width="200" alt="Geführter Modus – Strich für Strich"><br><sub>✍️ Geführter Modus</sub></td> <td align="center"><img src="Media/demos/demo-freehand.gif" width="200" alt="Freihand-Modus mit Bewertung"><br><sub>🖊️ Freihand-Modus</sub></td> <td align="center"><img src="Media/demos/demo-appearance.gif" width="200" alt="Erscheinungsbild-Optionen"><br><sub>🎨 Erscheinungsbild</sub></td> </tr> <tr> <td align="center"><img src="Media/demos/demo-info.gif" width="200" alt="Info & Merkhilfe Modal"><br><sub>📖 Info-Modal</sub></td> <td align="center"><img src="Media/demos/demo-settings.gif" width="200" alt="Einstellungen"><br><sub>⚙️ Einstellungen</sub></td> <td align="center"><img src="Media/demos/demo-gallery.gif" width="200" alt="Screenshot-Galerie"><br><sub>🖼️ Galerie</sub></td> </tr> </table>
Kanji Draw ist ein vollständig selbst enthaltenes Anki-Template — kein Build-Schritt, keine externen Dienste, vollständig offline-fähig. Es erzeugt zwei Kartentypen aus einem einzigen Notiztyp und bietet:
| Card 1 – Aktiv (Schreiben) | Card 2 – Passiv (Erkennen) | |
|---|---|---|
| Vorderseite | Deutsche Bedeutung · Zeichenfläche | Kanji sichtbar · Zeichenfläche |
| Rückseite | Ergebnis · Vergleichsansicht · Info-Modal | Schlüsselwort · Farbige Strichreihenfolge · Ergebnis · Info-Modal |
| Lernziel | Kanji aus der Bedeutung abrufen und schreiben | Kanji sehen und die Bedeutung abrufen |
Die Kartentypen können unabhängig voneinander konfiguriert werden. Card 1 bietet den vollen Einstellungsumfang (Zeichenmodus, Genauigkeit usw.); Card 2 beschränkt sich auf Darstellungsoptionen für das angezeigte Kanji (Strich-Nummern, Strich-Darstellung) sowie die gemeinsamen Erscheinungsbild-Einstellungen.
Der nächste Strich wird hervorgehoben — sobald er korrekt gezeichnet wurde, erscheint automatisch der folgende. Fehlerhafte Striche werden sofort farblich markiert.
Das gesamte Kanji wird in einem Zug frei gezeichnet — ohne Reihenfolgevorgabe. Nach dem Aufdecken der Rückseite wird jeder Strich automatisch dem passenden Referenzstrich zugeordnet und bewertet.
Jeder Strich wird auf Basis von vier Komponenten bewertet:
| Komponente | Gewichtung | Beschreibung |
|---|---|---|
| Form (Fréchet-Distanz) | 40 % | Globale Kurvenähnlichkeit zwischen Nutzerstrich und Referenzpfad |
| Durchschnittlicher Punktabstand | 25 % | Mittlere euklidische Abweichung der Abtastpunkte |
| Startpunkt-Toleranz | 17,5 % | Abweichung des Strichanfangs vom Referenzstartpunkt |
| Endpunkt-Toleranz | 17,5 % | Abweichung des Strichendes vom Referenzendpunkt |
Vor der Bewertung durchläuft jeder Strich drei Hard Gates:
Alle Striche werden auf 64 Abtastpunkte normalisiert (Catmull-Rom-Resampling). Die Fréchet-Distanz wird per iterativem Dynamic Programming (O(n²)) berechnet.
Die drei Stufen skalieren alle Schwellenwerte gleichmäßig:
| Stufe | Multiplikator | Effekt |
|---|---|---|
| Locker | × 1,35 | Großzügigere Toleranzen — gut für Anfänger |
| Normal | × 1,0 | Ausgewogene Standardeinstellung |
| Streng | × 0,7 | Engere Toleranzen — für geübte Lernende |
| Fehler | Farbe | Bedeutung |
|---|---|---|
| 0 | 🟢 Grün | Strich korrekt gezeichnet |
| 1 | 🟠 Orange | Leichte Abweichung |
| 2 | 🟧 Dunkelorange | Merkliche Abweichung |
| 3+ | 🔴 Rot | Strich falsch oder nicht erkannt |
Alle Optionen sind über das ⚙️ Zahnrad-Menü erreichbar. Einstellungen werden pro Kartentyp (Card 1 / Card 2) unabhängig gespeichert.
| Einstellung | Card 1 | Card 2 | Optionen |
|---|---|---|---|
| Zeichenmodus | ✓ | — | Geführt · Frei |
| Strich-Genauigkeit | ✓ | — | Locker · Normal · Streng |
| Echtzeit-Prüfung | ✓ | — | An · Aus |
| Zeichen-Hilfe | ✓ | — | An · Aus |
| Abschluss-Animation | ✓ | — | An · Aus |
| Einstellung | Card 1 | Card 2 | Optionen |
|---|---|---|---|
| Farb-Bewertung | ✓ | — | An · Aus |
| Strich-Nummern | ✓ | ✓ | An · Aus |
| Vergleichsansicht | ✓ | — | An · Aus |
| Strichansicht | ✓ | — | Handschrift beibehalten · SVG-Pfade einblenden |
| Strich-Darstellung | — | ✓ | Standard · Farbig (Regenbogen-Strichreihenfolge) |
| Einstellung | Optionen |
|---|---|
| Muster | Kein · Kreuz (Mittellinien) · Voll (+ Diagonalen) |
| Linienstil | Gepunktet · Gestrichelt · Durchgehend |
| Dicke | Dünn · Mittel · Dick |
| Sichtbarkeit | Hell (30 %) · Mittel (60 %) · Dunkel (100 %) |
| Einstellung | Optionen |
|---|---|
| Modus | System (automatisch) · Hell · Dunkel |
| Akzentfarbe | 🟢 Grün · 🔵 Blau · 🟣 Lila · 🟠 Orange · 🔴 Rot · 🩵 Türkis |
| Primärfarbe | Neutral · Warm · Kühl · Sepia · Rosé · Salbei |
| Strich-Stil | Standard · Gelstift · Tusche · Neon |
| Strichfarbe | Schwarz · Tintenblau · Violett · Braun · Türkis · Schiefer |
| Schriftgröße | Klein · Normal · Groß |
| Stil | Aussehen |
|---|---|
| Standard | Klarer, gleichmäßiger Strich |
| Gelstift | Weicher Wet-Ink-Look mit leuchtendem Halo-Effekt |
| Tusche | Variierender Pinselstrich mit dynamischer Breite |
| Neon | Leuchtender Glow-Effekt (SVG-Doppelfilter, GPU-optimiert) |
Das Info-Modal (📖-Schaltfläche auf der Rückseite) zeigt alle verfügbaren Informationen zu einem Kanji auf einen Blick:
| Bereich | Inhalt |
|---|---|
| Kopfzeile | Kanji · Deutsche Bedeutung · JLPT-Stufe · Häufigkeitsrang |
| Radikalbaum | Visuelle Zerlegung in Radikale/Primitive mit antippbaren Tooltips |
| Eselsbrücke | Deutsche Merkhilfe mit optionalem visuellem Hinweis |
| Wortbeispiele | Anklickbare Beispielwörter mit ein-/ausblendbarer Furigana |
| Lesungen | ON-Lesung (blau) · KUN-Lesung (grün) mit farbigen Labels |
| Externe Links | Jisho · Tatoeba · WaniKani · Koohii |
| Plattform | Status | Besonderheiten |
|---|---|---|
| Anki Desktop (2.1+) | ✅ | Maus + Pointer-Events; Add-on für Einstellungspersistenz empfohlen |
| AnkiDroid | ✅ | Touch + S-Pen; CookieManager-Flush; Gesten-Hooks userJs1/2/3 |
| AnkiMobile (iOS) | ✅ | Touch + Apple Pencil; position:fixed Scroll-Lock; Safe-Area-Insets |
| AnkiWeb | ✅ | Vollständig browserbasiert; dynamische Viewport-Anpassung |
Folgende JavaScript-Funktionen können Geräte-Gesten zugewiesen werden:
| Funktion | Card 1 | Card 2 | Beschreibung |
|---|---|---|---|
userJs1 |
✓ | ✓ | Referenzstrich einblenden/ausblenden (C1) · Einstellungen (C2) |
userJs2 |
✓ | — | Zeichenfläche zurücksetzen |
userJs3 |
✓ | — | Einstellungen öffnen |
AnkiDroid: Einstellungen → Gesten → JavaScript-Funktion 1/2/3
AnkiMobile: Einstellungen → Gesten → Eigene Aktion → JavaScript ausführen
| Feld | Pflicht | Beschreibung |
|---|---|---|
Kanji |
✓ | Das Schriftzeichen (z. B. 山) |
Bedeutung |
✓ | Deutsche Übersetzung (z. B. Berg) |
SVGPfade |
✓ | SVG-<path>-Elemente — ein Element pro Strich |
JLPT |
— | JLPT-Stufe (N5–N1) |
Häufigkeit |
— | Häufigkeitsrang unter den gebräuchlichsten Kanji |
Radikale |
— | Strukturierte Kanji-Zerlegung (JSON) für den Radikalbaum |
Eselsbrücke |
— | Deutsche Merkhilfe / Eselsbrücke |
Merkhilfe |
— | Visueller Hinweis zur Eselsbrücke (Bild oder HTML) |
Wortbeispiel |
— | Wortbeispiele mit Furigana-Markup |
Onyomi |
— | ON-Lesung (Katakana) |
Kunyomi |
— | KUN-Lesung (Hiragana) |
Die Felder
Kanji,BedeutungundSVGPfadesind für die Grundfunktion zwingend erforderlich. Alle anderen Felder sind optional und werden im Info-Modal nur angezeigt, wenn sie befüllt sind.
| Vorlage | Datei |
|---|---|
| Card 1 – Vorderseite | Templates/Card-1/FrontTemplate.html |
| Card 1 – Rückseite | Templates/Card-1/BackTemplate.html |
| Card 2 – Vorderseite | Templates/Card-2/FrontTemplate.html |
| Card 2 – Rückseite | Templates/Card-2/BackTemplate.html |
| Styling (CSS) | Templates/Styling.css |
Den Inhalt der jeweiligen Datei vollständig in das entsprechende Eingabefeld des Template-Editors kopieren.
Auf Anki Desktop verwendet Qt WebEngine ein Off-The-Record-Profil — Cookies und localStorage werden bei jedem Neustart gelöscht. Das mitgelieferte Add-on löst dieses Problem.
pycmd('kdp:{...}'))user_files/settings.json (atomarer Schreibvorgang)Option A – AnkiWeb (empfohlen):
In Anki: Werkzeuge → Erweiterungen → Erweiterungen herunterladen → Code eingeben:
905251277
Option B – Manuell:
Den Ordner Addon/ in das Anki-Add-on-Verzeichnis kopieren und Anki neu starten:
| Betriebssystem | Pfad |
|---|---|
| Linux | ~/.local/share/Anki2/addons21/kanji_draw_persistence/ |
| Windows | %APPDATA%\Anki2\addons21\kanji_draw_persistence\ |
| macOS | ~/Library/Application Support/Anki2/addons21/kanji_draw_persistence/ |
Das Add-on ist optional. Ohne Add-on werden Einstellungen nur für die aktuelle Sitzung gespeichert und nach einem Neustart auf die Standardwerte zurückgesetzt. Auf AnkiDroid und AnkiMobile ist kein Add-on erforderlich.
kanji-draw-anki/
├── Templates/
│ ├── Card-1/
│ │ ├── FrontTemplate.html ← Zeichenfläche + Strich-Erkennung + Einstellungs-UI
│ │ └── BackTemplate.html ← Ergebnis + Vergleichsansicht + Info-Modal
│ ├── Card-2/
│ │ ├── FrontTemplate.html ← Zeichenfläche + Strich-Erkennung + Einstellungs-UI
│ │ └── BackTemplate.html ← Strichreihenfolge + Ergebnis + Info-Modal
│ └── Styling.css ← Gemeinsames Stylesheet (Themes, Responsive, Animationen)
│
├── Addon/
│ ├── __init__.py ← Einstellungspersistenz für Anki Desktop
│ └── manifest.json ← Add-on-Metadaten
│
├── Tests/
│ ├── js/ ← JavaScript-Unit-Tests (Node.js, 11 Dateien, 848 Tests)
│ └── anki_addon_stress_helper/ ← Live-Stresstests über AnkiConnect
│
├── Media/
│ └── demos/ ← Demo-GIFs für README
│
└── README.md
Reines HTML/CSS/JavaScript — direkt in Anki einsetzbar, keine CDN-Abhängigkeiten, vollständig offline-fähig.
| Algorithmus | Komplexität | Einsatz |
|---|---|---|
| Diskrete Fréchet-Distanz (iteratives DP, Float64Array) | O(n²) | Formähnlichkeit zwischen Nutzerstrich und Referenzpfad |
| Ungarischer Algorithmus | O(n³) | Optimale Strich-Zuordnung im Freihand-Modus |
| Catmull-Rom-Resampling | O(n) | Normalisierung aller Striche auf 64 Abtastpunkte |
<path>-ElementenrequestAnimationFrame-Loop)<style> gerendert, bevor Ankis FrontSide-Injection ausgeführt wird — verhindert das kurze Aufblitzen falscher Farbenwill-change: transform auf animierten Elementen; separate Lite-SVG-Filter für WebKit/iOSwindow._ks (Arbeitsspeicher)
→ Cookie (_k=…, max-age 1 Jahr)
→ localStorage
→ Add-on JSON (Anki Desktop)
eval(), keine dynamische Skripterstellung</ → <\/) verhindert <script>-Injection über das Add-onDer Quellcode dieses Projekts (Templates, Add-on, Algorithmen) steht unter der MIT-Lizenz.
Drittinhalte und eingebettete Daten behalten ihre jeweilige Lizenz:
| Bestandteil | Lizenz | Rechteinhaber |
|---|---|---|
| KanjiVG SVG-Strichpfade | CC BY-SA 3.0 | Ulrich Apel |
| Migaku SVG-Zerlegung | GPL v3 | Migaku |
| Kanji-Reihenfolge, Schlüsselwörter & Primitivnamen | Alle Rechte vorbehalten | Heisig / Rauther / Klostermann-Verlag |
| Merkhilfen & Eselsbrücken | MIT | PawMethod |
Vollständiger Lizenztext: LICENSE