STATIC PUBLICATION TOOL
ANQ Notes
A typed static site generator that turns Markdown into a complete publication and checks links before replacing the previous build.
Live sample publication
A fictional publication generated from Markdown.

Writing in, a complete publication out
This remake turns Markdown posts and Markdown or HTML pages into a static publication. A typed configuration defines the site; frontmatter provides titles, dates, topics, and explicit draft status. The output includes paginated indexes, topic pages, RSS, a sitemap, robots instructions, and a real 404 page. Generated pages need no browser JavaScript.
The sample publication has a warm ochre palette and shares typography, spacing and semantic CSS token names with the other ANQ projects. Each project remains independently themed.
A failed build should preserve the last good output
The generator validates dates, slug collisions, local links, fragments, duplicate IDs, and image alternative text before publishing output. It sanitizes content HTML and rejects source and asset symlinks. Configuration and templates remain trusted code; external links are not fetched or availability-checked.
An exclusive build lock prevents overlapping builds. Output is prepared in a staging directory, then replaces the previous generated directory with a fallback. Invalid builds preserve the previous publication; successful builds remove stale routes. This is a protected local build workflow, not a production atomic deployment transaction.
What was checked
The local v1 passed 15 integration and preview tests, type, formatting, and build checks. Browser checks with JavaScript disabled covered navigation, pagination, XML output, 404 behavior, mobile layouts, and automated accessibility scans of six views. A static Caddy container was checked as an unprivileged user with a read-only filesystem.
The fictional sample contains two pages, six published posts, and four topics, generating 24 files. The screenshot shows that sample. The same complete browser suite also passed against a disposable Ubuntu deployment published by digest through anq-publish, with internal TLS and no JavaScript requirement. The sample publication now runs publicly over HTTPS. Its pages and certificate were checked from outside the host. This does not verify the availability of every external link or establish a performance benchmark.
A deliberately small tool
This is a TypeScript project to clone and adapt, not a published npm CLI. Plugins, nested content directories, incremental builds, automatic watching, and client-side search are outside v1.
This is an AI-assisted remake of my earlier generator. Independent review remains separate from the checks described here.