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.9.tar.gz (782.2 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.9-py3-none-any.whl (96.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: anki_utils-0.2.9.tar.gz
  • Upload date:
  • Size: 782.2 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.9.tar.gz
Algorithm Hash digest
SHA256 cc125e263049cd83559fbd1cff9f16e7c89a12cae8ea287f79fbeb2a5bc1795b
MD5 e52d1f719628938c162d143be6b95109
BLAKE2b-256 26825b042630d544a70d93311dcecec35b1f8ccf02c8ab34e70396bcf12fc1fc

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: anki_utils-0.2.9-py3-none-any.whl
  • Upload date:
  • Size: 96.4 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.9-py3-none-any.whl
Algorithm Hash digest
SHA256 e329a915b21273c683f417fbe81cb461281bf7b7920bd3a16f360ce503f782c0
MD5 26d0d373cf795bd63a124765802a8707
BLAKE2b-256 60f2ed82188d5b71ff6cae3fecc95bdaa9a1b162718897cfe0e31ed634c95963

See more details on using hashes here.

Provenance

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