Post

I wasn't sold on this until I got to the implementation. It's so smart I'm probably gonna spend my day redesigning at least one or two of the theme toggles I've built.

Lea Verou, PhD@lea.verou.me

🔥 New blog post: Dark mode toggles that expose three states (system, light, dark) seem like the best option. Until you think about user goals, that is. Before rushing to disagree, hear me out. lea.verou.me/blog/2026/da... PS: As a data point, @jakearchibald.com was converted after reading this 😅

2 reposts7 likes

Incorrectly modelling “user has not expressed a preference” happens a ton! The magic here is to basically model it as the user *removing* a preference when they match their system theme, which turns out to be a perfectly valid thing for the button to do.