Skip to content

STORY-047: Dark Mode for Reduced Eye Strain #3

@trigrman

Description

@trigrman

User Story

As a Conference Attendee,
I want to use the survey in dark mode,
So that I can complete the survey comfortably in low-light conditions without eye strain.

Context

Many attendees complete surveys during evening sessions or in dimly lit venues. Dark mode reduces eye strain and is increasingly expected as a standard accessibility feature. It also improves battery life on OLED devices.

Source

Discovery Cycle: 2025-12-02-dark-mode
Synthesis Reference: iterations/2025-12-02-dark-mode/discovery/observations/dark-mode-requirements.md
User Need: Accessibility and comfort - reduce eye strain in various lighting conditions
Supporting Evidence: Standard accessibility expectation for modern web applications

Acceptance Criteria

Functional Scenarios

Scenario 1: System Preference Detection (Happy Path)

  • Given a user has dark mode enabled in their device settings
  • When they open the survey for the first time
  • Then the survey automatically displays in dark mode
  • And all screens use consistent dark mode styling

Scenario 2: Manual Theme Toggle

  • Given a user is viewing the survey
  • When they click the theme toggle
  • Then the theme switches between light and dark mode
  • And the preference persists across page loads

Scenario 3: No Flash on Load

  • Given a user has dark mode preference saved
  • When they load any survey page
  • Then the page renders in dark mode immediately without flashing light theme first

Scenario 4: Equal Experts Logo in Dark Mode

  • Given a user is viewing the survey in dark mode
  • When the Equal Experts logo is displayed
  • Then black pixels in the logo are inverted to white
  • And the logo remains clearly visible against the dark background

Non-Functional Requirements

  • Accessibility: All text meets WCAG AA contrast requirements in dark mode
  • Accessibility: Focus indicators clearly visible in dark mode
  • Performance: Theme switching is instant without layout shift
  • Usability: Theme toggle is keyboard accessible and screen reader friendly

Quality Checklist

  • Dark mode colors have sufficient contrast for readability
  • All UI components work correctly in both modes
  • Theme toggle announces state change to screen readers
  • Works across Chrome, Safari, Firefox, Edge
  • Equal Experts logo displays correctly with inverted colors (black to white)

Open Questions

  • Should we provide an "auto" option that always follows system preference?
  • Does Equal Experts have dark mode logo variants to use? Resolved: Use CSS filter to invert black pixels to white in dark mode (no separate logo needed)

Dependencies

  • MVP survey UI must be complete (stories 019-039)

Estimate

Size: S
Confidence: High

Reasoning: Dark mode is a well-established pattern with clear implementation approaches. Primary work is defining the color palette and ensuring all components adapt correctly.


Story ID: STORY-047
Iteration: 2025-12-02-dark-mode
Priority: Medium
Last Updated: 2025-12-08

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions