Complete · Software experiment
Dark mode token system
Every color as a CSS variable so dark mode is a class swap with zero layout shift.
Lessons learned
- Custom properties are the cleanest way to theme a static-feeling app.
- Persisting choice in localStorage beats guessing every visit.
- System preference is a good default when no choice is stored.
