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.8.tar.gz (346.0 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.8-py3-none-any.whl (67.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: anki_utils-0.2.8.tar.gz
  • Upload date:
  • Size: 346.0 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.8.tar.gz
Algorithm Hash digest
SHA256 a3d95246321d3491f4428fd8781b0f9e6ce2f1d71631cf5546ea94384fb61192
MD5 543039ce7289fcee4e737e2d9a585b66
BLAKE2b-256 3619543e26ca446a8db0e4e647b0b0c8e96162b47c00fb18604092e84475c002

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: anki_utils-0.2.8-py3-none-any.whl
  • Upload date:
  • Size: 67.9 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.8-py3-none-any.whl
Algorithm Hash digest
SHA256 caaa2fec9809a621c3ee37e4cc07dd39aabf788e695b51fa61262223985f203c
MD5 099cf20c0470b10cd1c466564da402fd
BLAKE2b-256 424a2a4893d72dba13709785559524586ca71d04315607c0bb133478eeef1871

See more details on using hashes here.

Provenance

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