sqzass
한국어

Getting started

From installing sqzass to building your first site

Everything you need to get a site on screen.

Note

Every runtime message is in Korean--help, errors, doctor findings, the dev server's log. There is no locale switch, and the documentation quotes the real strings rather than translating them, so what you read here is what the binary prints. The error identifiers (SQZASS_E_CONTENT) and the doctor check names (untranslated) are ASCII and stable, which is what a script should match on anyway.

Where the design differs

Markdown is transformed on the tree. Link rewriting, heading anchors and the table of contents are AST operations via comrak. The common shortcut — running regexes over the finished HTML — silently skips any element whose attributes are single-quoted or unquoted, and you find out in production.

Templates cannot read a half-written file. templates/ is snapshotted once per build and minijinja's loader resolves include and extends from that snapshot, so a rebuild triggered while you are saving sees one consistent state.

Broken references stop the build. An unresolved @/ link, a template that does not exist, two pages claiming the same URL, an unknown asset name — each is an error, not a warning you scroll past.

The same input produces the same bytes. Two builds are byte-identical, and CI checks it on every push.

Korean was not bolted on afterwards. A page's translations are linked automatically, and a language's navigation contains only pages that exist in it, so an untranslated page cannot leave a dead link behind. Search matches substrings rather than words, which is the only way 최적화 inside 검색엔진최적화 is ever found.

Status

Early, and honest about it: syntax highlighting, navigation, the table of contents, the asset pipeline, the dev server, search and Atom feeds all work. A theme system does not exist yet.