Tech Stack
techHow we’re running this thing…
Authoring and content
- Obsidian Markdown vault (
notes/**/*.md) - YAML frontmatter metadata (
title,slug,aliases,tags,stage,theme,outputs) - Wiki links (
[Note](/stub/note/),[Label](/stub/note/)) with backlink graph generation
Build and generation
- Python 3.9+ static site generator
- Pandoc for HTML and optional export formats (PDF, PPTX, DOCX, EPUB, TXT, etc.)
- Git metadata +
updates_manifest.jsonfor updates chronology - Generated graph artifacts:
/graph/index.htmland/graph/graph.json
Frontend
- HTML via Pandoc template
(
templates/page.html) - CSS theming (
static/style.css) - Vanilla JavaScript for theme controls and graph rendering
(
static/graph.js) - Responsive behavior: desktop / mobile views supported
Packaging and runtime
- Docker multi-stage build (
Dockerfile) - Runtime image serves static output with nginx
(
nginx.conf) - Static deployment model: no runtime database, no server-side app process
CI/CD and hosting
- Source control: Codeberg
- Deployment trigger: Codeberg webhook -> Coolify
- Build/deploy in Coolify via Dockerfile
- Public serving from containerized nginx