How epresso works
epresso is a build-time static generator:
- Config —
site.toml(per-env overrides viasite.<env>.toml+.env). - Content — collections defined in
content.config.pyare loaded by loaders into a typed store (ContentStore); each entry gets a content digest. - Pages — every file under
pages/is a route..eppages/frontmatter can exportget_static_paths()to fan out many routes from one file. - Build graph — routes and their content dependencies are tracked so the build is incremental: only what changed re-renders.
- Render — Markdown/
.eprender to HTML with scoped CSS + optional client scripts; outputs are deduplicated and minified. - Output —
dist/plus generatedsitemap.xml,robots.txt,llms.txt, search index.
epresso dev serves the same render path with live reload; epresso build writes
dist/.