Dark mode should not be locked behind a paywall

I understand the website already offers so much for free and that you people worked very very hard to bring dark mode to it.

But I’m really saddened to see that you have decided to add dark mode as a premium feature. It’s an accessibility item for some people, and a great QoL improvement for many, like myself.

Unfortunately, donating is not an option for people from countries with currencies that are not very strong (I’d have to shell out almost a seventh of my salary for it).

I believe the other perks are already great, so here’s hoping you reconsider this decision and bring dark mode to everyone in the future.

If you don’t, well, I’m thankful for everything else nevertheless. My C# is getting sharper and sharper thanks to this community!


I completely understand you. Good news: there will be a dark mode for everyone - because accesssibility is important. It will be more focused on contrasts etc, because that is the goal. The premium / insiders darkmode is leaning more on the esthetic side.


Hi there,

We have a low-contrast mode already launched (Sepia) and will also be adding a high-contrast mode in the coming days too. From what I understand those cover the generally accessibility needs for people. If there are some other accessibility needs that a dark-mode specifically provides over low/high contrast, I’d appreciate learning more about that.

I can recommend Dark Reader. Have used it for many months, and might still prefer it.


Came here to ask about this.

White-background screens, especially after the sun has gone down, literally gives me headaches. I had to do an early morning deploy on Heroku one morning and it was AGONY (no exaggeration). I have to squint so hard I can barely read the tiny text.

This is really an accessibility issue. If the “dark mode” in premium is an aesthetic option, it might be good to give that one a Marketing-Friendly name and have the accessible “dark mode” be given that eponymous label instead. It’s not about contrast so much as making the cornea high-stimulating wavelengths (bright colors) be minimized. This forum, for example, is PERFECT. :100: If you could take the stylesheet form this forum and somehow slap it onto the exercism site, that would be just fine.

ETA: I did check out low-contrast mode – while it is a nice looking theme, it doesn’t address the issue at all. The massive expanse of white in the background means that all those pixels on the monitor are fully firing all their RGB channels at 255 – maximum light intensity. That’s where the (literal) pain is. The parts that are firing high-intensity photons at my cornea need to be the content and not the passive non-content portions.

The minimum effort required would be, I think, setting the background-color everywhere to a darker shade / hue and then modifying all content to be sufficient contrast ratio on top of that. Colors likely don’t need to be changed.

The low contrast mode should also be applied for system dark mode, and then we’re there! The sepia with invert should do the trick. It’s not as pretty as our current real dark mode, which is probably the point.

  • Low contrast with a bright background can be unworkable for some people (like myself, when I am tired), as well as those with photophobia.
  • Low contrast with a dark background can be unworkable for other people (usually those with detoriated sight).
  • High contrast on a dark background can be problematic for those with with astigmatism or myopia.

The high contrast is called forced colors and already works, but requires some work indeed to make right (aka: add borders instead of shadows).

@dem4ron would appreciate some advice on how to do this as it seems like a pretty significant job.

Sure. @dem4ron ping, mail, or text me! I have a few tricks we can try but you’ll need to run some search queries which are faster to resolve in private.

Thank you! I’ll dive deep into this around tomorrow, and will gather questions for you about this. Have already spent some time with it before, but other things became more urgent/important.