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.5.tar.gz (335.5 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.5-py3-none-any.whl (64.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: anki_utils-0.2.5.tar.gz
  • Upload date:
  • Size: 335.5 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.5.tar.gz
Algorithm Hash digest
SHA256 802db80282a2f1924a4b0f74e34131c9a3f07df68253948c31eb5e8a11d537ed
MD5 2f706ded3ad886e1cffcdcf5e6b964fe
BLAKE2b-256 594121b9b97d035c0a1504e74584f8b901d5c3657234e2638a5f4a6bf35bdecb

See more details on using hashes here.

Provenance

The following attestation bundles were made for anki_utils-0.2.5.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.5-py3-none-any.whl.

File metadata

  • Download URL: anki_utils-0.2.5-py3-none-any.whl
  • Upload date:
  • Size: 64.5 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.5-py3-none-any.whl
Algorithm Hash digest
SHA256 9b179b6ab01cba43f1fe028b24ad81ef76c58e7c847cc72ea56610427e7ddd2d
MD5 0ec18a332aa34cb3db6f4663eaaf551a
BLAKE2b-256 0b766cf0456a57530182afc93d3d23fce9e7f61884f37a7cae7ad30f0ae2c2f4

See more details on using hashes here.

Provenance

The following attestation bundles were made for anki_utils-0.2.5-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