Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Study Engine Anki Toolkit

A validation-first toolkit for building and maintaining structured Anki study material.

The repository currently contains:

  • validators for MCQ, direct-recall, and existing-note exports;
  • tested Anki card templates for MCQ and Recall note types;
  • synthetic fixtures and a local test runner;
  • documentation for the workflow, migration process, and validation history.

The project began while building a CompTIA A+ study workflow, but the repository is intentionally separated from the actual study corpus so the tooling can evolve independently.

Goals

  • validate generated study material before import;
  • keep reusable tooling separate from private study content;
  • prefer read-only audits before modifying an existing Anki collection;
  • preserve GUIDs, scheduling, and review history when maintaining existing notes;
  • use synthetic fixtures for public tests instead of publishing course-derived cards;
  • treat quality heuristics as diagnostics rather than absolute rules.

Repository layout

anki/
├── templates/
│   ├── mcq/
│   └── recall/
├── tests/
│   ├── fixtures/
│   │   └── synthetic/
│   └── run_tests.sh
└── tools/
    ├── anki_existing_notes_audit.py
    ├── anki_mcq_audit.py
    └── anki_recall_audit.py

docs/
examples/

Quick start

Requirements:

  • Python 3
  • Bash
  • Anki for using the templates and import workflow

Run the synthetic validation suite:

./anki/tests/run_tests.sh

Audit a new MCQ TSV:

python3 anki/tools/anki_mcq_audit.py path/to/cards.tsv

Audit a new Recall TSV:

python3 anki/tools/anki_recall_audit.py path/to/cards.tsv

Audit an export of existing MCQ notes:

python3 anki/tools/anki_existing_notes_audit.py \
  path/to/export.txt \
  --report-dir path/to/report

The path/to/... strings above are examples, not commands to run literally.

Current note schemas

MCQ:

Front
Back
Explanation

Recall:

Prompt
Answer
Explanation

The existing-note maintenance workflow additionally uses GUID, note type, deck, and tags so existing notes can be identified and updated safely.

Card templates

The current MCQ template supports runtime option shuffling while leaving the stored note unchanged. Stored answer keys therefore remain canonical even though the displayed A/B/C/D order can change during review.

The Recall template uses Anki's typed-answer feature and provides a straightforward prompt/answer/explanation layout.

Validation

The public test suite uses synthetic cards only.

The underlying workflow was also exercised against a real Anki collection during development. Details and limitations are recorded in:

  • docs/validation_history.md
  • docs/existing_note_migration.md

Those validation results apply to the tested workflow and environment; they should not be treated as a guarantee for every Anki release or import configuration.

Privacy and repository scope

This repository does not contain:

  • the author's Anki collection;
  • .colpkg or .apkg backups;
  • paid-course card content;
  • live exports from the collection;
  • terminal recordings;
  • private maintenance artifacts.

Development status

This is a working toolkit, not a finished product.

The current baseline is sufficient for the existing MCQ and Recall workflow, but validators, templates, tests, and schemas are expected to evolve as additional certification material and study formats are introduced.

Licensed under the MIT License.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages