diff options
| author | Łukasz <lukasz@arcofasiagroup.com> | 2026-07-23 13:56:43 +0200 |
|---|---|---|
| committer | Łukasz <lukasz@arcofasiagroup.com> | 2026-07-23 13:56:43 +0200 |
| commit | 07bf5808039283ef7375b4af7703419f26b08b82 (patch) | |
| tree | 682553f6fcf8b663383e6c100a5afdb43f7b7363 /docs | |
| parent | e31b6120806240ece82426fe0a4d38c14113e464 (diff) | |
| download | lectio-07bf5808039283ef7375b4af7703419f26b08b82.tar.gz lectio-07bf5808039283ef7375b4af7703419f26b08b82.zip | |
Addendum B: expand to 10 named themes (add dracula/solarized/everforest/rosepine/onedark)
Diffstat (limited to 'docs')
| -rw-r--r-- | docs/superpowers/plans/2026-07-23-lectio-go-rewrite.md | 18 | ||||
| -rw-r--r-- | docs/superpowers/specs/2026-07-23-lectio-go-rewrite-design.md | 15 |
2 files changed, 24 insertions, 9 deletions
diff --git a/docs/superpowers/plans/2026-07-23-lectio-go-rewrite.md b/docs/superpowers/plans/2026-07-23-lectio-go-rewrite.md index 37608ad..27d32f5 100644 --- a/docs/superpowers/plans/2026-07-23-lectio-go-rewrite.md +++ b/docs/superpowers/plans/2026-07-23-lectio-go-rewrite.md @@ -1520,7 +1520,8 @@ the domain packages, never the reverse. ### Amendment to Task 10 (config) — web fields Add to `Config`: `WebTheme string \`toml:"web_theme"\``, `WebPort int \`toml:"web_port"\``. Defaults: `WebTheme "transfiguration"`, `WebPort 0`. Validate `WebTheme` ∈ -`{transfiguration,catppuccin,tokyonight,gruvbox,nord}`. Add to the embedded seed +`{transfiguration,catppuccin,tokyonight,gruvbox,nord,dracula,solarized,everforest,rosepine,onedark}`. +Add to the embedded seed (after `offline`): `web_theme = "transfiguration"` and `web_port = 0` with the spec's comments. (Small follow-up commit to internal/config.) @@ -1528,7 +1529,7 @@ spec's comments. (Small follow-up commit to internal/config.) **Files:** Create `internal/web/render.go`, `internal/web/render_test.go`, `internal/web/templates/*.html`, -`internal/web/static/themes/{transfiguration,catppuccin,tokyonight,gruvbox,nord}.css`, +`internal/web/static/themes/{transfiguration,catppuccin,tokyonight,gruvbox,nord,dracula,solarized,everforest,rosepine,onedark}.css`, `internal/web/static/htmx.min.js` (download the pinned release). **Theme aesthetic + palettes.** Minimal, ascetic: a spare serif/system reading @@ -1550,6 +1551,19 @@ colour-only file per theme. Palettes (canonical hex): `#fabd2f` (yellow), link `#83a598`, refrain `#b8bb26`, border `#3c3836`. - **nord**: bg `#2e3440`, fg `#d8dee9`, muted `#4c566a`, accent `#88c0d0`, link `#81a1c1`, refrain `#a3be8c`, border `#3b4252`. +- **dracula**: bg `#282a36`, fg `#f8f8f2`, muted `#6272a4`, accent `#bd93f9`, + link `#8be9fd`, refrain `#50fa7b`, border `#44475a`. +- **solarized** (dark): bg `#002b36`, fg `#839496`, muted `#586e75`, accent + `#b58900`, link `#268bd2`, refrain `#859900`, border `#073642`. +- **everforest** (dark): bg `#2d353b`, fg `#d3c6aa`, muted `#859289`, accent + `#dbbc7f`, link `#7fbbb3`, refrain `#a7c080`, border `#343f44`. +- **rosepine**: bg `#191724`, fg `#e0def4`, muted `#6e6a86`, accent `#f6c177`, + link `#9ccfd8`, refrain `#31748f`, border `#26233a`. +- **onedark**: bg `#282c34`, fg `#abb2bf`, muted `#5c6370`, accent `#e5c07b`, + link `#61afef`, refrain `#98c379`, border `#3b4048`. + +All ten themes MUST define the same role classes (build/render fails if a theme +omits one). base.css carries layout/typography (no colours). **Interfaces:** - Consumes `liturgy.Section`, `render.GatherVersion`, `render.OfflineVersions`. diff --git a/docs/superpowers/specs/2026-07-23-lectio-go-rewrite-design.md b/docs/superpowers/specs/2026-07-23-lectio-go-rewrite-design.md index 261997d..a56f345 100644 --- a/docs/superpowers/specs/2026-07-23-lectio-go-rewrite-design.md +++ b/docs/superpowers/specs/2026-07-23-lectio-go-rewrite-design.md @@ -306,14 +306,15 @@ self-contained single binary — no cgo, no build step. responsive compare columns. - **Themes.** Minimal, ascetic (spare typography, generous whitespace, no gradients/shadows/rounded chrome — just the palette applied to the role - classes). Five embedded CSS themes based on established palettes, switchable + classes). Embedded CSS themes based on the popular named palettes, switchable live in the UI and defaulted by `web_theme`: `transfiguration` (the user's own palette — dark hill-green, parchment text, gold accents; canonical hex in - `~/git/transfiguration-themes/palettes/transfiguration.json`), `catppuccin` - (Mocha), `tokyonight` (Night), `gruvbox` (dark), `nord`. The colour roles - (heading / citation / verse number / refrain / body) are CSS classes each theme - restyles. The active theme is stored in a cookie; `web_theme` is the initial - default (ships as `transfiguration`). + `~/git/transfiguration-themes/palettes/transfiguration.json`), plus + `catppuccin`, `tokyonight`, `gruvbox`, `nord`, `dracula`, `solarized`, + `everforest`, `rosepine`, `onedark`. The colour roles (heading / citation / + verse number / refrain / body) are CSS classes each theme restyles. The active + theme is stored in a cookie; `web_theme` is the initial default (ships as + `transfiguration`). - **Reuse.** Consumes the same core: `readings.Load` → `[]liturgy.Section`, `render.GatherVersion`'s `(label, blocks)` fed into templates. No changes to the domain packages — `internal/web` imports them, never the reverse. @@ -333,7 +334,7 @@ default_version = "pl" # TUI start / `lectio show` default width = 0 # CLI wrap width; 0 = detect terminal all = false # default to all parts (true) or just the gospel (false) offline = false # true = never fetch; read only harvested sigla + cache -web_theme = "transfiguration" # theme: transfiguration|catppuccin|tokyonight|gruvbox|nord +web_theme = "transfiguration" # theme: transfiguration|catppuccin|tokyonight|gruvbox|nord|dracula|solarized|everforest|rosepine|onedark web_port = 0 # lectio-web port; 0 = auto-pick a free port # Which parts to show. Both tables are commented out -> every part is shown. |
