| Crates.io | quillmark-python |
| lib.rs | quillmark-python |
| version | 0.1.17 |
| created_at | 2025-10-10 00:25:05.815364+00 |
| updated_at | 2025-10-10 01:21:40.450715+00 |
| description | Python bindings for Quillmark |
| homepage | |
| repository | |
| max_upload_size | |
| id | 1876359 |
| size | 173,215 |
Compact docs and canonical developer workflow.
pip install quillmark
from quillmark import Quillmark, ParsedDocument, OutputFormat
engine = Quillmark()
parsed = ParsedDocument.from_markdown("# Hello")
workflow = engine.workflow_from_quill_name("my-quill")
workflow.render(parsed, OutputFormat.PDF).artifacts[0].save("out.pdf")
This repository standardizes on uv for local development (https://astral.sh/uv). Use the commands below on macOS (zsh).
Install uv (one-time):
curl -LsSf https://astral.sh/uv/install.sh | sh
Canonical flow:
# create the uv-managed venv
uv venv
# install developer extras (includes maturin, pytest, mypy, ruff)
uv pip install -e "[dev]"
# Change to release for production builds
# uv pip install -e ".[dev]" --release
# develop-install (compile + install into the venv)
uv run python -m maturin develop
# run tests
uv run pytest
Notes
maturin builds the PyO3 extension; uv manages the virtualenv and command execution.Apache-2.0
If you prefer an opinionated, reproducible Python workflow the project designs recommend uv (https://astral.sh/uv). uv provides a small wrapper for creating venvs and running common commands. These commands are equivalent to the venv/maturin flow above but shorter.
Install uv (one-time):
curl -LsSf https://astral.sh/uv/install.sh | sh
Typical workflow with uv:
# create a venv and activate it
uv venv
# Build in debug mode (faster, suitable for development)
uv pip install -e ".[dev]"
# Build in release mode (slower, suitable for production)
uv run python -m maturin develop --release
# run the test suite
uv run pytest
# run mypy and ruff checks (project recommends these)
uv run mypy python/quillmark
uv run ruff check python/