Skip to main content
parch

parch

PyPI Python 3.14+ CI License: MIT

parch generates fixed e-ink PDF pages.

Install / Press

Needs Python 3.14+.

From PyPI

uv tool install parch          # or: pip install parch
parch init -o planner.toml     # Spec defaults as TOML (no checkout)
parch press planner.toml -o nomad-2026.pdf
parch specimen -w out

No checkout needed. One-shot: uvx parch press -o nomad-2026.pdf. parch init emits Spec defaults via Spec.to_toml; sample jobs also live in examples/ (not in the wheel).

From a checkout

uv sync --group dev
uv run parch press examples/nomad.toml -o out/nomad-2026.pdf
uv run parch specimen -w out   # PNG catalog (Nomad + Scribe); click a thumb to expand in place
uv run parch proof examples/nomad.toml -o out/exp-typeramp-proof.pdf

Architecture

Device → Component (data only) → Section (build Page) → Layout (chrome + seat) → Plotter → Press
Device id size resolution notes
SuperNote Nomad supernote-nomad 118.87 × 158.5 mm 1404×1872 @ 300 PPI top clearance 8 mm reserved; writing clearance 4 mm; root_body 8.5pt
Kindle Scribe (1st gen) kindle-scribe 157.48 × 209.97 mm 1860×2480 @ 300 PPI top clearance 0; writing clearance 4 mm; bottom clearance 10 mm; root_body 8.5pt

Any device can set top_clearance = 0 to drop the reserved top band. Omit the key to keep the Device default. Bottom clearance is separate.

Tests

uv run pytest
uv run ruff check src tests && uv run ruff format --check src tests

Dev Container

Codespaces / Dev Containers use ghcr.io/yyolk/parch-devcontainer (venv at /home/vscode/.venv). After the first image publish, set that GHCR package to Public.

Releasing

Ship steps live in Releasing.

License / Credits

MIT — see LICENSE.

Historical inspiration: Vitaliy Kudryk’s LYP. fpdf2 Plotter rewrite; not a port of LYP sources.

Runtime dependency fpdf2 is LGPL-3.0, separate from this MIT license.

Vendored Jost (Book / Medium / Bold / Heavy) is SIL OFL 1.1 — see src/parch/fonts/LICENSE.

Metadata

Release files for parch 0.4.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for parch 0.4.6
File Size Uploaded
parch-0.4.6.tar.gz 385.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for parch 0.4.6
File Interpreter ABI Platform
parch-0.4.6-py3-none-any.whl Python 3 none any Details

Total release size: 685.0 kB

Release files / parch-0.4.6.tar.gz

Download URL parch-0.4.6.tar.gz
Size 385.1 kB
Tags Source
SHA-256 checksum
How to use checksums
63ce19df448d79fed201fba9685a801b6eab5e58f337a0ce26d965c67a92acfc
BLAKE2b-256 checksum
How to use checksums
00e072d11a90924974178e483c2346ed0ef8f119d7d5e527a3a1f6c05d0bc8cc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 1, 2026.

Transparency log

Release files / parch-0.4.6-py3-none-any.whl

Download URL parch-0.4.6-py3-none-any.whl
Size 299.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
41cb5454109ae497f8990b8c54bab0c56866b6f808e87aa8571870c657580a53
BLAKE2b-256 checksum
How to use checksums
8c5e196a7ff0f00d24e6325cfc25e0a417fbfbae2fb62468e1de63448a813c5b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 1, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.4.6 This release

2 release files

0.4.5

2 release files

0.4.4

2 release files

0.4.3

2 release files

0.4.2

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.14

2 release files

0.3.13

2 release files

0.3.12

2 release files

0.3.11

2 release files

0.3.10

2 release files

0.3.9

2 release files

0.3.8

2 release files

0.3.7

2 release files

0.3.6

2 release files

0.3.5

2 release files

0.3.4

2 release files

0.3.3

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.9

2 release files

0.2.8

2 release files

0.2.7

2 release files

0.2.6

2 release files

0.2.5

2 release files

0.2.4

2 release files

0.2.3

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page