Skip to content

design: dark mode audit — ensure all components respect dark mode CSS tokens #673

Description

@magic-peach

Several UI components have hard-coded colour values (Tailwind bg-white, text-gray-*, border-gray-*) that do not switch correctly in dark mode. This results in invisible text, incorrect backgrounds, and poor contrast in dark mode.

What to fix

Audit every component in src/components/ and replace any hard-coded colour utilities with the CSS variable tokens:

Replace With
bg-white bg-[var(--surface)]
text-gray-900, text-black text-[var(--text)]
text-gray-500, text-gray-400 text-[var(--muted)]
border-gray-200, border-gray-300 border-[var(--border)]
bg-gray-50, bg-gray-100 bg-[var(--bg)]

Files to audit

All files in src/components/ and src/app/

Acceptance criteria

  • Toggle dark mode — all text, backgrounds, and borders look correct
  • No component has hard-coded text-white / text-black / bg-white that conflicts with dark mode
  • Contrast ratios meet WCAG AA (4.5:1 for normal text, 3:1 for large text) in both modes
  • bun run lint and bunx tsc --noEmit still pass

Screen Recording Required

Your PR for this issue must include a screen recording showing the feature working on your local machine (bun run devhttp://localhost:3000). PRs without a recording will not be merged.

See CONTRIBUTING.md for how to record.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions