Development
Project codename: Honolulu
WikiGlide's internal repository is named Honolulu — the original codename for the project.
This is why CSS class names throughout the engine use the hw- prefix
(short for Honolulu Wiki). The prefix is purely internal and
does not appear in any user-facing markup or content.
Stack
WikiGlide is built with Hono (a lightweight web framework) and PostgreSQL, written entirely in TypeScript. There is no client-side framework — every page is server-rendered HTML.
Architecture
The engine is organized around a few core layers:
- Parser — A custom wikitext parser that transforms markup into HTML in a single pass. Handles headings, links, tables, templates, references, and image embeds. Template expansion is async (templates are regular wiki pages fetched from the database), while the core parse is synchronous.
- Storage — A content-addressable model inspired by MediaWiki's MCR (Multi-Content Revisions). Each edit creates a revision pointing to content blobs identified by SHA-256 hash, so identical content is stored only once.
- Auth — JWT-based with four permission groups: anonymous, user, curator, and sysop. Email verification is required for write operations.
Templates
Templates are ordinary wiki pages — {{Foo}} looks up the page titled "Foo" and expands it.
Parameters use {{{1}}}, {{{name|default}}} syntax. A handful of magic templates
(like {{note}} and {{reflist}}) are intercepted by the engine before database lookup.
User-facing CSS classes
Classes that wiki authors can use in their markup follow the wikitable- naming convention instead
of the internal hw- prefix:
wikitable-stackwikitable-cardwikitable-pinfirst
See the markup reference for details on these classes.
WikiGlide