| this_file | README.md |
|---|
The website catalogue for FontLab extensions, scripts, plugins and templates.
Edit Markdown in src_docs/md/ and configuration in src_docs/mkdocs.yml. docs/ is generated output; download/ contains downloads. Read THEME.md for shared theme ownership.
Python 3.12+ and uv are required. The project pins ProperDocs 1.6.7 and MaterialX 10.1.5. A separately authorized isolated build uses bash build.sh; it writes docs/ and docs/.nojekyll. This is a build, not a runtime test or proof of a live site. The docs boundary suite runs with uv run python -B -m unittest discover -s tests_docs -v.
Keep shared browser behavior in the shared theme project. Preserve existing downloads, public URLs, licence terms and authorship. Never hand-edit generated CSS as the source fix.
Use an isolated checkout. Read AGENTS.md for workflow and TODO.md for pending work. The Issue 230 documentation reconciliation does not establish a new runtime, native or release result.
Extensions, scripts, plugins, templates for the FontLab font editor
Run ./build.sh with uv installed. ProperDocs and MaterialX build the Markdown
in src_docs/md/ into docs/, which GitHub Pages publishes. The shared theme
loads from https://i.fontlab.com/fltheme26/1.0.0/. Edit source files, then
rebuild; generated HTML in docs/ is not the authoring source.
The migration preserves public page paths and downloadable assets. The
fontlab-www-docstheme sibling repository records source and output asset
hashes and browser verification.
This repository is part of the FontLab theme 2026 rollout: extension catalogue. THEME.md documents its source/output boundaries, configuration, publication route, control ownership, shared visual changes and verification. Use the public setup guide and MaterialX starter for new sites.
build.sh runs the strict clean builder using the existing uv lock. The builder
uses the checkout date unless SOURCE_DATE_EPOCH is provided. Actions captures
the source date once and reuses it for both builds, including the immutable
commit containing generated output.
Every main push builds the exact event commit. Only generated docs/ may be
committed, after a fresh remote-main check; ordinary push rejects competing
writers. A dependent read-only checkout rebuilds that exact output commit and
requires complete output parity. A normal main push with unchanged output uses
the automatic Pages build; bot-generated output or a deliberate manual main
dispatch explicitly requests a legacy Pages build. Pages must use default main
and main:/docs. The API builds latest
default; before/after head checks expose, but cannot atomically prevent, drift
during its request. Actual run/deployment/live proof is separate from local tests.