agentsclimarketplace

Pdf paginated

Skill slogsdon/skills-design/skills/pdf-paginated

Exports document-flow HTML to a PAGINATED PDF at a real paper size (Letter/A4), with a running folio footer (title · page X / Y). The long-form sibling to pdf-html: where pdf-html renders each .canvas to one tall auto-height page (right for social artifacts and audit reports), this paginates a whole document across pages — right for essays, field guides, specs, and anything meant to be read or printed as pages. Trigger on: "paginated PDF", "print PDF", "PDF with pages", "Letter/A4 PDF", "multi-page PDF", "PDF of this essay/guide/doc". For single-canvas design artifacts (LinkedIn, Instagram, business card, audit report), use pdf-html or screenshot-html instead.From its SKILL.md

Install
npx -y skills add slogsdon/skills-design --skill pdf-paginated

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • 3 stars3 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
  • runs commandsInstructs the agent to run 2 commands, including `node skills/pdf-paginated/scripts/pdf-paginated.mjs <dir> [--output <dir>] [--format Letter|A4] [--margin <css>] [--bleed <color>] [--no-footer]` and 1 more.

SKILL.md

4.5 KB, ~1.0k tokens by cl100k_base, as published. Nobody here has run it

Skill: pdf-paginated

Paginated document PDF via headless Chromium page.pdf({format, margin}). No .canvas targeting — the whole document flows across paper pages. A folio footer (title left, page X / Y right, JetBrains Mono) is rendered in the bottom margin.

When to use

  • Long-form documents where the reader expects pages: an essay, a field guide, a spec, a report body, a letter.
  • When the output should be Letter or A4 with real margins and page numbers, not a single tall canvas.

Skip if:

  • The artifact is a fixed-size design canvas (social post, business card, blog hero, audit-report canvas). Use pdf-html — it sizes the PDF to the canvas.
  • You want a PNG. Use screenshot-html.

The HTML it expects

Plain document-flow HTML, NOT the .canvas convention:

  • Content flows normally (body → article). No fixed-width .canvas wrapper.
  • Give the reading column a measure with max-width (e.g. 64ch) centered, and put the page surface color on body (it prints because printBackground is on).
  • Do not set @page size/margins in CSS — the script owns paper size and margins via --format / --margin. A CSS @page margin would double up.
  • Optional @media print rules to keep things tidy across page breaks: h2, li { break-inside: avoid; } and h2 { break-after: avoid; }.
  • Set a clean <title> — it becomes the footer's running head.
  • Self-contained styles (inline <style> or a resolvable @import); web fonts load fine (the script waits for document.fonts.ready).

How to run

node skills/pdf-paginated/scripts/pdf-paginated.mjs <dir> [--output <dir>] [--format Letter|A4] [--margin <css>] [--bleed <color>] [--no-footer]

Flags:

  • <dir> (positional, default .): directory scanned recursively for *.html. screenshots/, pdfs/, and hidden dirs are skipped.
  • --output <dir> (default <dir>/pdfs): where PDFs are written, one per HTML file.
  • --format (default Letter): Letter or A4.
  • --margin (default 0.9in): CSS length applied to all four sides. Ignored in bleed mode.
  • --bleed <color>: full-bleed page surface. See below.
  • --no-footer: drop the folio footer (in bleed mode the footer strip still paints).

Full-bleed backgrounds (--bleed <color>)

Default mode gives white paper margins. If the document has a committed background color (e.g. a cream editorial page), that background floats as a card on white — the margins show through. --bleed <color> fixes this: it zeroes the left/right margins so the HTML background reaches the side edges, and paints the top and bottom margin strips <color> so every page is that color edge-to-edge, with a per-page inset and no white bands. The folio still renders in the bottom strip.

In bleed mode the HTML owns only its side text insets (via body padding); the top/bottom insets are the painted strips. So the HTML should:

  • set the surface color on html and body with print-color-adjust: exact,
  • pad only the sides (e.g. padding: 0.1in 0.95in 0.3in), and
  • keep the reading column measured (max-width) and centered.
# cream editorial essay, full-bleed
node skills/pdf-paginated/scripts/pdf-paginated.mjs . --output ./pdfs --bleed '#fbfaf9'

Prerequisites

None — self-bootstraps on first run, installing Playwright + Chromium into its own node_modules next to the script (shared pattern with pdf-html / screenshot-html). First run ~10–60s; subsequent runs are fast.

Relationship to pdf-html

pdf-htmlpdf-paginated
Outputone auto-height page per .canvasdocument paginated across paper pages
Sizes tocanvas pixel dimensionsLetter / A4 + margins
Footernonefolio (title · page X / Y)
Use forsocial artifacts, audit-report canvasesessays, field guides, specs, reports

What ships with it: 2 files

10.3 KB alongside SKILL.md, 1 of them executable

scripts/

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.