Getting started¶
This page provides a minimal introduction to installing and running Fontshow end-to-end.
Installation¶
Fontshow can be installed via pip.
Standard installation¶
pip install fontshow
Editable / development installation¶
For contributors or local development:
git clone https://github.com/marco0560/Fontshow.git
cd Fontshow
python3 scripts/bootstrap_dev_environment.py
This bootstrap command creates .venv, installs the editable project
with development dependencies, applies repo-local Git configuration, and
runs the standard validation checks.
If you also want the documentation toolchain, run:
python3 scripts/bootstrap_dev_environment.py --with-docs
The source package lives under src/fontshow/.
Quick pipeline¶
A typical workflow consists of four steps:
fontshow preflight
fontshow dump-fonts
fontshow parse-inventory
fontshow create-catalog
Each step consumes the output of the previous one and produces a well-defined artifact.
If you want an explicit validation pass between parsing and catalog
generation, run fontshow validate-inventory <inventory.json> on the
parsed inventory before create-catalog.
Output files¶
By default:
dump-fontsproduces a raw inventory JSON fileparse-inventoryproduces an enriched inventory JSON filevalidate-inventoryvalidates an existing inventory and does not create a new output filecreate-catalogproduces output artifacts (e.g. PDF catalog)
Output file names and locations can be customized via command options.
Use --help on each command for details.
LaTeX requirements¶
Catalog generation relies on LaTeX.
Notes:
- A full TeX distribution (e.g. TeX Live) is recommended
lualatexmust be available in the execution environment- Compilation must occur on the same system where fonts were discovered, so that font paths remain valid
If LaTeX is missing, preflight will report the limitation and catalog generation may fail.
Next steps¶
- See
cli.mdfor a complete CLI overview - See
pipeline.mdfor a detailed explanation of each stage - See
tools/pages for command-specific documentation