Skip to content

feat: add high-contrast theme mode (DS-066) - #501

Merged
IbrahimIjai merged 2 commits into
SO4-Markets:mainfrom
precious-akpan:feat/466-high-contrast-mode
Jul 30, 2026
Merged

feat: add high-contrast theme mode (DS-066)#501
IbrahimIjai merged 2 commits into
SO4-Markets:mainfrom
precious-akpan:feat/466-high-contrast-mode

Conversation

@precious-akpan

Copy link
Copy Markdown
Contributor

Summary

Adds an optional high-contrast mode that works independently of light/dark theme selection to meet diverse user contrast needs.

Changes

  • Extended ThemeProvider with highContrast state and persistence
  • Added .high-contrast CSS class with WCAG AAA contrast overrides
  • Boosted text, border, and focus indicator contrast
  • Enhanced interactive state visibility
  • Maintains distinguishable charts and trading states without oversaturation
  • Applies before first paint to avoid contrast flash

Implementation

  • highContrast boolean stored in localStorage (so4-high-contrast)
  • CSS variables overridden for both light and dark modes
  • Focus indicators remain clearly visible on all surfaces
  • All semantic tokens maintain meaning in high-contrast mode

Tokens Modified

  • --text-primary, --text-secondary, --text-tertiary
  • --border, --input, --ring
  • --primary, --destructive
  • --success, --warning, --info

Future Work

  • Add high-contrast toggle to appearance settings panel
  • Add automated contrast ratio tests
  • Document which tokens change in high-contrast mode

Closes #466

- Extend ThemeProvider with highContrast state and persistence
- Add .high-contrast CSS class with WCAG AAA contrast overrides
- Boost text, border, and focus indicator contrast
- Maintain distinguishable charts and trading states
- Apply before first paint to avoid flash
- Independent of light/dark theme choice

Closes SO4-Markets#466
@vercel

vercel Bot commented Jul 30, 2026

Copy link
Copy Markdown

@precious-akpan is attempting to deploy a commit to the Ijai's projects Team on Vercel.

A member of the Team first needs to authorize it.

@drips-wave

drips-wave Bot commented Jul 30, 2026

Copy link
Copy Markdown

@precious-akpan Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

@IbrahimIjai
IbrahimIjai merged commit 7cc9aa7 into SO4-Markets:main Jul 30, 2026
0 of 3 checks passed
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.

DS-066: Add an optional high-contrast theme mode

2 participants