Skip to main content

Python utilities for creating Anki flashcards. Designed for AI agent integration.

Project description

anki-utils

Python utilities for creating Anki flashcards. Designed for AI agent integration.

Install

pip install anki-utils

Features

  • Card Generation: Create .apkg files for 6 card types (Front-Back, Concept, Cloze, Image, Person, Image Occlusion)
  • Theme System: 4 built-in themes (minimal, classic, high-contrast, calm)
  • Markdown Support: Convert markdown formatting to Anki-compatible HTML
  • Input Validation: Clear error messages for invalid card data
  • Image Occlusion: OCR-based automatic region detection
  • Preview Assets: React components for card preview
  • Agent-Friendly: CLI commands for querying roadmap and changelog

Quick Start

# Generate .apkg from JSON
echo '{"deck_name": "Test", "cards": [...]}' | anki-utils export-apkg --output deck.apkg

# Resolve relative media paths (image_path/photo_path) against a base directory
echo '{"deck_name": "Test", "cards": [...]}' | anki-utils export-apkg --output deck.apkg --base-path /path/to/project

# List available themes
anki-utils themes --list

# Get preview template
anki-utils asset preview-template

# Detect occlusion regions in an image
anki-utils occlusion-detect image.jpg --json

For AI Agents

See AGENTS.md for complete context on working with this codebase.

anki-utils roadmap                    # Full roadmap
anki-utils changelog --latest         # Most recent changes

Development

# Clone and install in dev mode
git clone https://github.com/Gilbetrar/anki-package.git
cd anki-package
pip install -e ".[dev]"

# Run tests
pytest -v

# Run with coverage
pytest --cov=anki_utils

Repository Structure

anki-package/
├── AGENTS.md            # Context for AI coding agents
├── anki_utils/          # Published PyPI package
│   ├── exporter.py      # Core .apkg generation
│   ├── markdown.py      # Markdown to HTML conversion
│   ├── themes.py        # CSS theme definitions
│   ├── occlusion.py     # Image occlusion detection
│   ├── cli.py           # Command-line interface
│   ├── ROADMAP.md       # Development roadmap
│   └── CHANGELOG.md     # Version history
├── tests/               # Test suite (pytest)
└── .github/workflows/   # CI/CD (runs tests on push/PR)

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

anki_utils-0.2.91.tar.gz (782.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

anki_utils-0.2.91-py3-none-any.whl (95.8 kB view details)

Uploaded Python 3

File details

Details for the file anki_utils-0.2.91.tar.gz.

File metadata

  • Download URL: anki_utils-0.2.91.tar.gz
  • Upload date:
  • Size: 782.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for anki_utils-0.2.91.tar.gz
Algorithm Hash digest
SHA256 613ac97dd5665b3df3ab2893aaef755c5bf652a131ad7e0cbb001432520a2071
MD5 9d1e0abb5944ef5135b721e54cc5eb70
BLAKE2b-256 4b455a2d3d8557df8de5fa974bc69979a127b8107cf100e8b25db72d36f1cb5b

See more details on using hashes here.

Provenance

The following attestation bundles were made for anki_utils-0.2.91.tar.gz:

Publisher: publish.yml on Gilbetrar/anki-package

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file anki_utils-0.2.91-py3-none-any.whl.

File metadata

  • Download URL: anki_utils-0.2.91-py3-none-any.whl
  • Upload date:
  • Size: 95.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for anki_utils-0.2.91-py3-none-any.whl
Algorithm Hash digest
SHA256 0af3ee61c38a53279be0a2b3c9569e458030e04d301e2dc642367d3a411e377e
MD5 c86ebf6b6f4d748eb88461de3c04b9b4
BLAKE2b-256 dd8d2ec5032c032fa4dec7a75536cffc5af850dc5bd1af15cb0125be7ce9b1a2

See more details on using hashes here.

Provenance

The following attestation bundles were made for anki_utils-0.2.91-py3-none-any.whl:

Publisher: publish.yml on Gilbetrar/anki-package

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page