Anki add-on: Version History - Notes and Note Types

Git-like, append-only version history for Anki — all inside the app. Every change to your notes (fields & tags) and note types (card templates + CSS) is captured; browse any item's timeline with per-field diffs and restore any version. Capture Automatic — edits are captured as you make them, riding Anki's undo system (undo/redo recorded too, reflog-style). Sync-aware — changes merged in by AnkiWeb sync (edits made on your other devices) are captured as well, labeled Sync in the timeline. Lazy by default — capture remains lazy: a note's "before" state is captured when you open it in the editor. On profile open, the add-on offers once to baseline the full collection; it never runs without confirmation, and declining leaves the option available under Tools → Note Version History. Manual snapshots via the editor 🕘 button, the Browser context menu, and the note type dialog. Restore Notes — Browser → right-click a card → 🕘 Version History (or Ctrl+Alt+H). Timeline + per-field diff; restore a whole version or selected fields. Note types — Tools → Note Version History → Note Type History (or the 🕘 button in the card-type editor). Restores templates + CSS only, never the field schema — so no forced full sync . Restores are undoable (Ctrl+Z) and are themselves recorded (append-only). Storage & safety History is stored locally per profile in the add-on's user_files/ and is never written into collection.anki2 . The history itself does not sync — each computer keeps its own (changes arriving via sync are still captured). Survives add-on updates. Includes retention/pruning and a compact command. Languages: English, 한국어. Requires Anki 23.10+ (Qt6). Source & bug reports: https://github.com/udonehn/anki-version-history 한국어 Anki 안에서 동작하는 git식(append-only) 버전 기록 애드온. 노트 (필드·태그)와 노트타입 (카드 템플릿 + CSS)의 모든 변경을 기록하고, 타임라인에서 필드별 diff로 확인하며 원하는 버전으로 복원합니다. 캡처 자동 — 편집할 때 Anki undo 시스템에 얹혀 자동 기록(undo/redo도 reflog처럼 기록). 동기화 인식 — AnkiWeb 동기화로 병합돼 들어오는 변경(다른 기기에서 한 편집)도 캡처해 타임라인에 동기화 로 표시합니다. 기본은 지연(lazy) — 설치 시 강제 처리 없음. 노트를 편집기에서 열 때 "편집 전" 상태를 캐시. 완전 커버리지를 원하면 도구 → 노트 버전 기록에서 전체 베이스라인. 수동 스냅샷 — 편집기 🕘 버튼, 탐색창 우클릭, 노트타입 창. 복원 노트 — 탐색창 카드 우클릭 → 🕘 버전 기록 (또는 Ctrl+Alt+H). 타임라인 + 필드별 diff; 전체 또는 선택 필드 복원. 노트타입 — 도구 → 노트 버전 기록 → 노트타입 기록 (또는 카드 유형 편집기의 🕘 버튼). 템플릿+CSS만 복원, 필드 스키마는 안 건드림 → 전체 동기화 강제 없음 . 복원은 되돌릴 수 있고(Ctrl+Z) 그 자체도 기록됩니다. 저장·안전 기록은 프로필별로 애드온 user_files/ 에 로컬 저장 , collection.anki2 에는 절대 쓰지 않음 . 기록 자체는 동기화되지 않고 컴퓨터마다 따로 보관됩니다(동기화로 들어오는 변경은 캡처됨). 애드온 업데이트에도 보존. 보존 정리·압축 기능 포함. 언어: 영어, 한국어. 요구: Anki 23.10+ (Qt6). 소스·버그 신고: https://github.com/udonehn/anki-version-history

GitHub repository: udonehn/anki-version-history
Repository description: Anki add-on that automatically records every change to your notes and note types, with an in-app timeline, per-field diffs and restore.
Languages: Python