Licences
Verified against each package’s own metadata on 2026-10-17.
This site serves other people’s work: 7 typefaces for your book and three more for the pages you are reading, 8 sets of hyphenation patterns and 9 software libraries. Several of those licences require the copyright notice to travel with the distribution, so this page is a compliance record rather than a credits list.
Typefaces
All 7 are under the SIL Open Font License, Version 1.1, which permits embedding in a document, including a book you sell, with no attribution required in the book and no further permission. The one thing the licence forbids is selling the font files on their own.
| Typeface | Classification | Designer |
|---|---|---|
| EB Garamond | Old-style serif | Georg Duffner and Octavio Pardo, after Claude Garamont |
| Libre Baskerville | Transitional serif | Pablo Impallari and Rodrigo Fuenzalida, after John Baskerville |
| Source Serif 4 | Transitional serif | Frank Grießhammer, Adobe |
| Lora | Contemporary serif with brushed curves | Olga Karpushina and Alexei Vanyashin, Cyreal |
| Crimson Pro | Old-style serif in the Garamond tradition | Jacques Le Bailly, after Sebastian Kosch |
| Alegreya | Humanist serif, designed for long-form reading | Juan Pablo del Peral, Huerta Tipográfica |
| Inter | Neo-grotesque sans | Rasmus Andersson |
The full text of the licence is at /licenses/OFL-1.1.txt.
And the three this site itself is set in
Separate from the eight above, which go into your book: the pages you are reading are set in Bodoni Moda (Copyright 2020 The Bodoni Moda Project Authors), Hanken Grotesk (Copyright 2021 The Hanken Grotesk Project Authors) and Fragment Mono (Copyright 2022 The Fragment-Mono Project Authors). All three are under the same OFL 1.1, and none declares a Reserved Font Name, which is what makes the subsetting the site does to them permitted, since a subset is a Modified Version under §3 of the licence and a Modified Version may not keep a reserved name.
Hyphenation patterns
The pattern sets come from the TeX hyphenation repository, by way of the hyphenation.* packages. Those packages declare no licence of their own; the licence below is the one in the header of the corresponding upstream hyph-<lang>.tex, which is where it actually lives.
| Language | Licence | Copyright |
|---|---|---|
| English (American) (en-us) | All-permissive, notice must be preserved | Copyright © 1990, 2004, 2005 Gerard D. C. Kuiken |
| English (British) (en-gb) | MIT | Hyphenation patterns for British English, hyph-utf8 |
| French (fr) | MIT | Motifs de césure français, hyph-utf8 |
| German (de) | MIT | Copyright © 2013–2024 Stephan Hennig, Werner Lemberg, Günter Milde, Sander van Geloven, Georg Pfeiffer, Gisbert W. Selke, Tobias Wendorf, Keno Wehr |
| Spanish (es) | MIT/X11 | Patrones de separación silábica, hyph-utf8 |
| Italian (it) | LPPL or MIT, at your option | Copyright © 2008–2011 Claudio Beccari |
| Dutch (nl) | MIT | Afbreekpatronen, hyph-utf8 |
| Portuguese (pt) | BSD 3-clause | Padrões de hifenização, hyph-utf8 |
American English patterns
Copyright © 1990, 2004, 2005 Gerard D. C. Kuiken.
Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved.
Reproduced in full rather than summarised, because preserving this notice is the condition the licence attaches.
Software
| Package | Licence | What it does here |
|---|---|---|
| pdf-lib 1.17.1 | MIT | Writes the print PDF and embeds the subset fonts. |
| @pdf-lib/fontkit 1.1.1 | MIT | Reads the typeface files, applies kerning and ligatures, and subsets them. |
| fflate 0.8.3 | MIT | Reads the .docx archive and writes the EPUB archive. |
| pdfjs-dist 6.4.299 | Apache-2.0 | Rasterises the generated PDF for the on-screen print preview. |
| hypher 0.2.5 | BSD-3-Clause | Applies Liang's hyphenation algorithm to the pattern sets below. |
| next 16.3.8 | MIT | Builds the static site. |
| react / react-dom 19.2.8 | MIT | The interface. |
| @vercel/analytics 2.0.1 | MIT | Cookieless page analytics, served from this domain. |
| tailwindcss 4.3.3 | MIT | The stylesheet. |
Full licence texts: MIT, Apache 2.0, BSD 3-Clause, OFL 1.1.
And the algorithm
The line breaker implements the method described in Donald E. Knuth and Michael F. Plass, “Breaking Paragraphs into Lines”, Software: Practice and Experience 11 (1981), 1119–1184. The implementation here is original; the idea is theirs, and it is the single largest reason a page set with this tool reads the way it does.