MarqueDown
This website is powered by MarqueDown, a lightweight site engine written in C++17 by Privateer Systems. The name is a play on Markdown (MD) (which is a lightweight plain-text formatting language that uses simple symbols to structure text—such as headings, lists, links, and emphasis - so it can be easily converted into formatted documents like HTML), our dynamic version which is assembled at the webserver, and letters of Marque which were Privateering licences.
How it works
Content is authored in Markdown and stored in a git repository. MarqueDown pulls from the repository, builds the site, rendering pages through HTML templates, and serves them from an in-memory cache via FastCGI. Page generation is typically in the micro-seconds.
There is no database, no CMS, and no JavaScript framework. Pages are pre-rendered and served instantly.
Features
- Markdown with includes — pages can pull in shared text blocks, reducing repetition across the site
- Template inheritance — a base layout is extended by specialised templates for blog posts, listings, and other page types
- Navigation menus — defined in a simple text file with nested includes; the current page is automatically highlighted
- Blog listings — a directory of Markdown files becomes a date-sorted blog with thumbnail images, summaries, and RSS feed
- Image pipeline — source images are automatically resized into multiple widths with responsive
srcsetattributes - Git integration — the engine polls a remote repository and rebuilds the cache when new commits are detected
- Live preview — a built-in development server watches for file changes and refreshes the browser automatically and a VSCode Extension makes life easy
Performance
MarqueDown is single-threaded by design. Git checks happen between requests, never mid-render. A full site rebuild typically completes in under 100 milliseconds for 30 pages.
Static assets (CSS, images, fonts) are served directly by Apache. MarqueDown handles only the dynamic page rendering through a Unix socket.
Architecture
MarqueDown runs behind Apache with mod_proxy_fcgi and Cloudflare. The stack is
minimal:
- Content — Markdown files in a Forgejo git repository
- Engine — MarqueDown FastCGI process rendering from cache
- Web server — Apache serving static files and proxying dynamic requests
- CDN — Cloudflare for TLS, caching, and DDoS protection
Why not WordPress?
This site was previously a WordPress installation. MarqueDown replaces it with something simpler, faster, and more secure:
- No PHP, no MySQL, no plugins, no updates
- No attack surface beyond Apache and a single compiled binary
- Content versioned in git with full history
- Pages served from memory in microseconds
- The entire site is a handful of Markdown files anyone can edit
This epitomises our approach to engineering. Efficient, secure, simple.