# AGENTS.md – Trilium Share Gruvbox Blog System Public repository for the **Gruvbox public-share theme + blog system** that runs on a [TriliumNext](https://github.com/TriliumNext/Trilium) instance (`notes.familie-zink.org`, live blog: `richard.familie-zink.org`). This file captures the requirements and design decisions so future work stays consistent. ## What this is A blog built on Trilium's Public Share: a backend **blog generator** builds index/category/tag pages, an RSS feed, a sitemap, a search index and a garden-state map from notes that carry a `publish=true` label. Frontend `shareHtml` scripts add search, prev/next, reading time, widget rendering (Mermaid/Excalidraw/MindMap) and a themed footer. All styling lives in one CSS file (Gruvbox, light + dark, theme toggle without reload). ## Repository layout | Path | Note in Trilium | Purpose | |---|---|---| | `blog_generator.js` | `blog_generator` (backend script) | builds index, categories, tags, feed, sitemap, `blog_data`, `state_map` | | `blog_publish_manager.js` | `blog_publish_manager` (backend script) | mirrors notes between `Unpublished` and the blog on `publish` label changes | | `theme/blog_share_theme.css` | `blog_share_theme.css` (`shareCss`) | the entire Gruvbox theme | | `theme/favicon.svg`, `theme/cookie.woff2` | `favicon`, `Cookie` | site icon + BMC font | | `lib/highlight.js`, `lib/hljs_line_numbers.js` | `highlight.js`, `hljs line numbers plugin` | code highlighting | | `lib/3d/*` | three.js, OrbitControls, STLLoader, occt-import-js (WASM) | local libraries for the 3D model viewer | | `scripts/*.js` | one code note each (`.blog`), attached via `~shareHtml` | frontend snippets (verbatim content incl. `