Skip to content

feat(theme): add seasonal theme system with auto-detection and manual toggle#35

Open
Krzysztof-Cieslak wants to merge 1 commit into
mainfrom
ace/01KY5XFVKD43CZ8Q4QJ91ENCVP
Open

feat(theme): add seasonal theme system with auto-detection and manual toggle#35
Krzysztof-Cieslak wants to merge 1 commit into
mainfrom
ace/01KY5XFVKD43CZ8Q4QJ91ENCVP

Conversation

@Krzysztof-Cieslak

Copy link
Copy Markdown
Member

Created by GitHub Ace · View Session

Summary

Adds a seasonal theme system that automatically adjusts Calm HN's color palette based on the current time of year, with an optional manual override.

Closes #34

Seasons

Season Months Palette
🌸 Spring Mar–May Emerald/green
☀️ Summer Jun–Aug Orange (existing look)
🍂 Autumn Sep–Nov Amber/rust
❄️ Winter Dec–Feb Indigo/blue

Architecture

  • src/seasons.ts — Season detection from date + theme color definitions
  • src/SeasonContext.ts — React context type and instance
  • src/SeasonThemeProvider.tsx — Provider that applies CSS custom properties to :root
  • src/useSeasonTheme.ts — Hook to consume the theme context
  • src/index.css — CSS variable defaults
  • src/App.tsx — Uses CSS variables for gradient and accent colors; includes a season dropdown

Features

  • Auto-detects season from the current month
  • Manual override via a dropdown in the header (persisted to localStorage)
  • Uses CSS custom properties so Tailwind arbitrary values integrate cleanly
  • Summer palette matches the existing design — no visual change for current users during summer months
  • Instant swap on season change (no gradual blending)

… toggle

Implements a seasonal color palette that adjusts based on current month:
- Spring (Mar-May): green/emerald tones
- Summer (Jun-Aug): orange/warm tones (existing look)
- Autumn (Sep-Nov): amber/rust tones
- Winter (Dec-Feb): blue/indigo tones

Includes a dropdown in the header for manual season override,
persisted to localStorage. Defaults to auto-detection.

Closes #34

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Co-authored-by: nextocat <238339293+nextocat@users.noreply.github.com>
Co-authored-by: Krzysztof Cieślak <krzysztof_cieslak@windowslive.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Build a seasonal theme system

1 participant