Skip to content

[Feature] Ensure dark/light mode persistence, OS sync, and accessibility #333

Description

@kelly-musk

Problem

components/theme-provider.tsx wraps next-themes, but it is unclear if:

  1. The theme persists correctly across page navigations and session restores
  2. The initial theme matches the OS prefers-color-scheme on first visit
  3. The theme toggle is accessible (aria-label, keyboard navigable)

Fix

  1. Ensure next-themes is configured with defaultTheme="system" and enableSystem={true}
  2. Add suppressHydrationWarning to <html> to prevent hydration mismatch
  3. Add aria-label to the theme toggle button
  4. Test theme persistence in Playwright

Impact

Low UX / accessibility — theme inconsistencies and accessibility gaps.

Metadata

Metadata

Assignees

Labels

Stellar WaveIssues in the Stellar wave programaccessibilityAccessibility (a11y)featureNew feature or missing functionalityuxUser experience

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions