What this example wires up
Every feature of the engine is used by a page you can open right now:
| URL | demonstrates |
|---|---|
/ | landing page: a list view over the doc_groups table renders the documentation cards; the “Try the API” section calls the live endpoints below |
/docs/<group> | list view with filter_by from a path parameter (indexed column) |
/doc/<id> | single-row view, fixed_filter published=1 — untick 'published' on an article in the admin and it disappears from the site |
/contact | a public table form: fields, server-side timestamp, honeypot, redirect on success; the POST route is just its address |
/api/docs | api GET returning view data as JSON (try ?grp=getting-started) |
/cms | admin UI: CRUD for articles/groups/feedback, users, invites, roles, password change |
/soe | remote SQL console: the sqliteonline.com frontend connects to this site's databases (enable per user on the Users page; see the soe chapter) |
/cms/media | file uploads: the cover field on the Articles form stores an uploaded image url; the type is detected from file content (see the media chapter) |
/mcp | the MCP endpoint: an AI agent with a token from the admin’s MCP page manages this site remotely (see MCP agent) |
And the content itself came from seed/doc_groups.json and seed/docs.json — inserted on first start while the tables were empty. And the engine is multi-site: this whole example is the localhost entry of the site map in the root settings.json (folder www/default) (see Sites & domains).