nzeribe

Claude Typeset — Design skill for Claude Code

Design community

A Claude Code skill: set Markdown as a real page.

How to install Claude Typeset

This entry records only its repository, not the path inside it, so there is no exact command to give. Open nzeribe/claude-typeset and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

What Claude Typeset does

A Claude Code skill: set Markdown as a real page. Fifteen typographic rules from Bringhurst's Elements of Typographic Style, plus the tools that make them enforceable — measure the finished PDF, number it, verify it before you send it.

Alternatives in Design

  • Canvas Design — Create beautiful visual art in PNG and PDF documents using design philosophy 94.1k ★
  • Planning With Files — Claude Code skill implementing Manus-style persistent markdown planning — the workflow pattern behind the $2B 17.4k ★
  • Polish UI — Polish UI elements by auditing SCSS and TSX markup against the Anytype design system, then fixing discrepancie 8.7k ★

README

claude-typeset

A [Claude Code](https://docs.anthropic.com/en/docs/claude-code) skill that makes your model set documents like a typographer instead of a word processor.

Point it at a Markdown file and you get a real page: a self-contained HTML sheet and a properly **measured** PDF, plus the three instruments that keep it honest — one that measures the finished page, one that numbers it, one that verifies it before it goes anywhere.

The reason it works is not the stylesheet. It is that the model is carrying a **doctrine** — fifteen rules taken from Bringhurst's *The Elements of Typographic Style* and paid for in real, specific failures. Each rule says what it cost. That is in [DOCTRINE.md](./DOCTRINE.md), and it is the part worth reading even if you never install anything.

Why your PDFs look cheap

Almost certainly not the font. **The measure.**

Bringhurst's first rule of the page is 45–75 characters per line, 66 ideal. Past about 75 the eye loses the line on the return sweep and the page stops being text and becomes a grey slab. A default 30pt print margin on A4 leaves a 189mm column — about **97 characters**. That is what "it looks cheap" usually is, and no amount of font-swapping will fix it.

The second rule is the one that costs people a day: **you cannot compute the measure, only measure it.** The same nominal size of the same named font on the same column gave 68 characters through one renderer and 89 through another — the browser had embedded the face as Type 3 and set it narrower. So the pipeline ends by reading the finished PDF back and counting.

Install

Claude Code skills live in `~/.claude/skills//`:

git clone https://github.com/nzeribe/claude-typeset.git ~/.claude/skills/typeset
pip install pymupdf
bash ~/.claude/skills/typeset/install.sh

You also need a Chromium-family browser (Chrome, Chromium, Brave or Edge) installed — it is the typesetter, for the reason in rule 7. The installer checks for all three and tells you w