summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--docs/superpowers/plans/2026-07-23-lectio-go-rewrite.md18
-rw-r--r--docs/superpowers/specs/2026-07-23-lectio-go-rewrite-design.md15
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.