diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 0000000..6ffe30d --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,103 @@ +# 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 | +| `scripts/*.js` | one code note each (`.blog`), attached via `~shareHtml` | frontend snippets (verbatim content incl. `