From 2b175096b61a4fa6d8250f32f0c839b928b34e9e Mon Sep 17 00:00:00 2001 From: Claude Date: Wed, 29 Jul 2026 15:32:14 +0000 Subject: [PATCH] docs: document the project site in CLAUDE.md The site is now a sub-project with its own structure and conventions, and nothing recorded them. Adds a section covering the file layout, the deploy trigger (push to main touching docs/site/**), and the four conventions that are easy to break silently: - dark is the base theme, set pre-paint by an inline script - i18n keys carrying markup must be listed in translate()'s innerHTML branch - how to regenerate og-image.png from its committed source - the release notice and JSON-LD version must track the published release Co-Authored-By: Claude Opus 4.8 Claude-Session: https://claude.ai/code/session_01LAjDSA1954JLqUZnxoJ5sy --- CLAUDE.md | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/CLAUDE.md b/CLAUDE.md index 128344a..023635b 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -237,6 +237,44 @@ Each CLI command lives in `src/cli/.rs` with a `pub fn handle(...)` fun - `ArchMismatch` error variant has `#[allow(dead_code)]` — available for strict arch enforcement in future - `PluginInfo`, `fetch_remote_registry`, `list_info` have `#[allow(dead_code)]` — scaffolding for remote plugin marketplace +## Project site (`docs/site/`) + +The landing page published at `https://supercosti21.github.io/zero_layer/`. +Deployed by `.github/workflows/pages.yml`, which runs **only on push to `main`** +touching `docs/site/**`. A merge that lands on `main` is what makes it live. + +``` +docs/site/ + index.html semantic markup only — no inline