This content is being actively developed and should not be relied upon until published at fedramp.gov.
Zensical requires Python 3.11 or newer. The GitHub Pages build uses Python 3.13, so Python 3.13 is recommended for local development.
Create and activate a virtual environment from the repository root:
python3.13 -m venv .venv
source .venv/bin/activateInstall the exact dependency versions used by the Pages build:
python -m pip install --require-hashes -r requirements.txtStart a local development server with live reload:
zensical serveThe site is normally available at http://127.0.0.1:8000/. Edit Markdown files
under content/ and configuration in zensical.toml.
To create a production-like build in html/, run:
zensical build --cleanAdd the package and an exact version to requirements.in.
For example:
some-zensical-plugin==1.2.3
Regenerate the hashed lock file after installing uv:
python -m pip install uv
uv pip compile requirements.in \
--python-version 3.13 \
--python-platform x86_64-manylinux_2_17 \
--generate-hashes \
--output-file requirements.txtConfigure the plugin in zensical.toml according to its
documentation. Commit both requirements.in and the regenerated
requirements.txt; the workflow installs only the locked, hash-verified
dependencies.