parch
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 8 mm reserved; writing clearance 4 mm; bottom clearance 10 mm; root_body 8.5pt |
Tests
uv run pytest
uv run ruff check src tests && uv run ruff format --check src tests
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.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| parch-0.4.2.tar.gz | 355.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| parch-0.4.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 638.4 kB
Release files / parch-0.4.2.tar.gz
| Download URL | parch-0.4.2.tar.gz |
|---|---|
| Size | 355.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
87b638b7b52996d093f7e090c64da336b89c40bca3beb0191411c219c5d95df5
|
|
BLAKE2b-256 checksum How to use checksums |
30ab79fdf795fb18303f0db656eb0c14622b68ad688f27895c41478421c14b41
|
| 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 20, 2026.
Transparency logRelease files / parch-0.4.2-py3-none-any.whl
| Download URL | parch-0.4.2-py3-none-any.whl |
|---|---|
| Size | 283.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0a52d382eff613005739e1962a12fecacd44aee9260d34fe29a06574df38ce87
|
|
BLAKE2b-256 checksum How to use checksums |
910aae86c2e412697f14785cb4fd95c293a961514053469c0bf983b08baeddee
|
| 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 20, 2026.
Transparency log