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.5

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.5
File Size Uploaded
parch-0.4.5.tar.gz 377.3 kB Details

Built distribution (wheel)

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

Total release size: 672.1 kB

Release files / parch-0.4.5.tar.gz

Download URL parch-0.4.5.tar.gz
Size 377.3 kB
Tags Source
SHA-256 checksum
How to use checksums
337fcc056fefaf007e3cf08f4112af6242ec9387c9ae29cf503a46ac3290247d
BLAKE2b-256 checksum
How to use checksums
23817e234d65a4aa20673e3b2cb3ea0081a8f9d5ecfc738b0959717f5ee55042
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 Sep 23, 2026.

Transparency log

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

Download URL parch-0.4.5-py3-none-any.whl
Size 294.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
dbf221ff7b3f7099e5319c115f08e4f645e136210cceed2321eef3217b2823be
BLAKE2b-256 checksum
How to use checksums
112abd4bf52a53dfe648641b243ba455a9d4852c6027b7f6d2644a132a5c24f2
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 Sep 23, 2026.

Transparency log

Release history Release notifications | RSS feed

0.4.6

2 release files

This release

0.4.5 This release

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