diff options
| author | Fuwn <[email protected]> | 2026-01-20 00:16:14 -0800 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2026-01-20 00:16:14 -0800 |
| commit | e09fc2af31bf99698d203d0a03e78735b4d5a6b2 (patch) | |
| tree | 08b2077a70795ad518dc3b785f372190c8251c1f /internal/server | |
| parent | feat: Improve theme CSS mappings for comprehensive styling (diff) | |
| download | kaze-e09fc2af31bf99698d203d0a03e78735b4d5a6b2.tar.xz kaze-e09fc2af31bf99698d203d0a03e78735b4d5a6b2.zip | |
refactor: Use CSS variable overrides for proper theme integration
Instead of trying to override individual Tailwind classes (which was
fragile and incomplete), now properly override Kaze's root CSS variables
(--bg-primary, --status-ok, etc.) to use OpenCode theme values.
This works because style.css already maps all Tailwind classes to these
CSS variables, so overriding the variables automatically themes everything.
The theme flow is now:
1. OpenCode theme defines: --theme-background, --theme-success, etc.
2. Override CSS redefines: --bg-primary = var(--theme-background), etc.
3. style.css classes use: background: var(--bg-primary), etc.
This approach is much cleaner and ensures complete, consistent theming.
Diffstat (limited to 'internal/server')
| -rw-r--r-- | internal/server/server.go | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/internal/server/server.go b/internal/server/server.go index 6d76fa0..8d491dc 100644 --- a/internal/server/server.go +++ b/internal/server/server.go @@ -199,8 +199,8 @@ func (s *Server) handleIndex(w http.ResponseWriter, r *http.Request) { if err != nil { s.logger.Warn("failed to load theme", "url", s.config.Site.ThemeURL, "error", err) } else if resolvedTheme != nil { - // Generate CSS variables and Tailwind mappings - cssString := resolvedTheme.GenerateCSS() + resolvedTheme.GenerateTailwindMappings() + // Generate CSS: theme variables + override Kaze's CSS variables + cssString := resolvedTheme.GenerateCSS() + resolvedTheme.GenerateVariableOverrides() themeCSS = template.CSS(cssString) } } |