Metadata-Version: 2.4
Name: pykara
Version: 0.9
Summary: Karaoke effect templating engine for ASS subtitle files.
Project-URL: Homepage, https://github.com/pandafansub/pykara
Project-URL: Repository, https://github.com/pandafansub/pykara
Project-URL: Documentation, https://github.com/pandafansub/pykara/blob/main/docs/index.md
Project-URL: Issues, https://github.com/pandafansub/pykara/issues
Author: Panda Fansub
License-Expression: MIT
License-File: LICENSE
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Multimedia :: Video
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.14
Requires-Dist: fonttools; sys_platform != 'win32'
Requires-Dist: freetype-py; sys_platform != 'win32'
Requires-Dist: matplotlib; sys_platform != 'win32'
Requires-Dist: uharfbuzz; sys_platform != 'win32'
Provides-Extra: dev
Requires-Dist: fonttools; extra == 'dev'
Requires-Dist: matplotlib; extra == 'dev'
Requires-Dist: mdformat; extra == 'dev'
Requires-Dist: pyright; extra == 'dev'
Requires-Dist: pytest; extra == 'dev'
Requires-Dist: pytest-cov; extra == 'dev'
Requires-Dist: ruff; extra == 'dev'
Description-Content-Type: text/markdown

# Pykara Templater

**Pykara** is a karaoke templating framework written in Python, inspired by
the legacy Karaoke Templater from Aegisub.

## Requirements

- Python 3.14 or higher

## Installation

```sh
pip install pykara
```

## Usage

```sh
pykara input.ass output.ass
pykara input.ass output.ass --json output.json   # Export intermediate data
pykara input.ass output.ass --warn-only          # Downgrade errors to warnings
pykara input.ass output.ass --seed 42            # Initial deterministic RNG seed
pykara input.ass output.ass --font-dir ./fonts   # Prefer fonts from a directory
pykara input.ass output.ass --generated-only     # Write only generated fx lines
```

See the [documentation](docs/index.md) for the full reference.

## Development

Create and activate a virtual environment:

```sh
python -m venv .venv
source .venv/bin/activate
```

Install development dependencies:

```sh
pip install -e ".[dev]"
```

### Code Quality & Testing

```sh
mdformat --check .                 # Validate Markdown formatting
ruff check pykara tests            # Run lint rules
ruff format --check pykara tests   # Verify Python formatting
pyright                            # Run static type checking
pytest --cov                       # Run test suite with coverage
```

## License

Distributed under the MIT License.
