Skip to content

feat(ui): add light and dark mode with theme toggle#28

Merged
gcko merged 3 commits intomainfrom
feature/light-and-dark-mode
Feb 7, 2026
Merged

feat(ui): add light and dark mode with theme toggle#28
gcko merged 3 commits intomainfrom
feature/light-and-dark-mode

Conversation

@gcko
Copy link
Owner

@gcko gcko commented Feb 7, 2026

PR checklist

  • Ensure you have added or ran the appropriate tests for your PR.
  • DCO signed

What type of PR is this?

Feature

What this PR does / why we need it:

Adds light and dark mode support to the Write Wall extension:

  • Defaults to the system preference (prefers-color-scheme) with a CSS-only fallback to prevent FOUC
  • Provides a toggle button in the top-right info bar to manually switch themes
  • Persists the user's theme choice across sessions via chrome.storage.local (per-device, not synced)
  • Uses a warm sepia/paper palette for light mode to reduce eye strain
  • Toggle button has a fixed width to prevent layout shift when switching modes
  • Adds directive to AGENTS.md requiring PRs always target main
  • Bumps version to 2.6.0

Which issue(s) this PR fixes:

N/A

Special notes for your reviewer:

  • Light palette uses warm tones (#f0ebe3, #e6e0d6) instead of cool grays for easier reading
  • Theme stored under theme key in chrome.storage.local (alongside existing cursor key)
  • 10 new test cases added (50 total in main.spec.ts), 100% statement coverage maintained
  • color-scheme: light dark added to #count-mode select for native widget rendering

Does this PR introduce a user-facing change?:

Yes. Users can now toggle between light and dark mode via a button in the top-right corner. The extension respects the system color scheme preference by default.

gcko and others added 2 commits February 7, 2026 15:34
Add system-preference-aware theming with a manual toggle button that
persists the user choice to chrome.storage.local. Uses a warm
sepia/paper palette for light mode to reduce eye strain.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Signed-off-by: Jared Scott <jared.scott@variable.team>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Signed-off-by: Jared Scott <jared.scott@variable.team>
@github-actions
Copy link

github-actions bot commented Feb 7, 2026

Coverage Report

Summary

Metric Coverage Change
Overall 100.0% NEW
Changed Files
File Coverage Change
src/main.ts 100.0% NEW

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Signed-off-by: Jared Scott <jared.scott@variable.team>
@gcko gcko merged commit d70f5dd into main Feb 7, 2026
6 checks passed
@gcko gcko deleted the feature/light-and-dark-mode branch February 7, 2026 07:48
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.

1 participant