370

Each Stack Exchange site should provide users the option of using a dark mode design/theme.

Why is this feature missing?

11
  • 11
    For what it's worth, Physics SE launched with a dark theme (it was supposed to evoke a chalkboard). It was such a problem that they went back to Sketchy, and have remained there for over half a year. Commented Nov 8, 2011 at 16:44
  • 2
    @PopularDemand They were clearly confused -- I loved the Physics theme Commented Nov 8, 2011 at 18:22
  • @MichaelMrozek smbc-comics.com/index.php?db=comics&id=2406#comic Commented Nov 8, 2011 at 18:28
  • @MichaelMrozek: I liked that theme for itself too. I liked it a lot. But it really was straining my eyes to flip between that scheme and otherwise dark-on-light web-sites and and my day-to-day computing environment (also dark-on-light). Commented Nov 8, 2011 at 18:49
  • 1
    There's a user-made solution for this posted on this very site. Commented Oct 3, 2016 at 21:43
  • 2
    With modern technology (oled) black themes let us contribute more (due to longer battery life). Commented Dec 1, 2018 at 23:37
  • 3
    Shouldn’t this be status-planned since Updates to the Stack Overflow blog seems to suggest that dark mode is currently being implemented into the Stacks design system? Commented Feb 22, 2020 at 16:13
  • Link to the answer on this page for Dark Reader. Commented Dec 8, 2021 at 19:17
  • 5
    Dark Reader is awesome, but not perfect. Also, some people are in environments that disallow browser plug-ins. Commented Apr 27, 2022 at 6:05
  • 3
    My optician just recommended to switch to white-on-black for most of my work due to declining eyesight. It sounds like the availability of dark themes isn't just a matter of taste, but potentially accessibility. Commented Mar 7, 2023 at 14:23
  • 3
    As someone who has recently learned that I have seizures due to computer screens, dark mode is absolutely an accessibility issue. Commented Aug 1, 2023 at 21:00

17 Answers 17

81

I think this is a great suggestion. ProjectEuler.net has implemented this effectively, naming it Lights On / Off.


enter image description here


enter image description here


2
  • 9
    @rafael Votes etc. on Meta sites do not mean the same thing as regular SE sites. Votes on the question are not is this a good question but do I agree with the proposal; and an Accept may be given even if it is not a solution but simply an idea or position that the OP agrees with. The SE developer status- tags represent official positions on Meta questions. Commented Mar 31, 2019 at 16:50
  • 1
    Github discussion can be found here Commented Sep 24, 2019 at 20:03
82

Came here after I asked the same question seven months earlier, when there is still no dark mode, and the question was marked as duplicate.

I just want to add that an official dark theme is not a subjective preference about font size, layout or a gimmick. All programmers would understand that the eye health problem which associates with inevitable long term staring of the bright white screen when you are reading or programming every day.

That is why more and more programmers would choose a dark IDE. Reddit, YouTube, Twitter, and more sites are adding official dark theme support. It's not some gimmick or fashion trend. It's a everyday health issue.

Fortunately, there is an ongoing GitHub discussion here

2
  • 21
    It is more of an accessibility issue, and should be treated as such. Commented Oct 8, 2019 at 18:31
  • The question you gave in your answer isn't available anymore. Commented Sep 15, 2024 at 22:37
47

Currently, Dark Mode is available as a beta test on Stack Overflow only. More details can be found in this Meta Stack Overflow question. At the moment, it isn't clear if, how, or when it will be rolled out to other sites in the network:

Future releases

At this point, the focus of Dark Mode is on Stack Overflow and we’ll eventually bring it to MSO. While the retheming we did across the network two years ago makes updating our [styles] easier, creating dark versions of all of our sites, particularly the custom-designed ones, is going to be a huge challenge we’re not able to contemplate at this time. The artwork on some of those sites simply can’t be made dark because we don’t have access to the original art files and, to be honest, some of the themes will always be better as-is.


November 2020, this was rolled out to the international versions of Stack Overflow.

The January 2021 updates about the editor and the review queues contained screenshots of Meta Stack Overflow and Meta Stack Exchange hinting at resp. in Dark Mode – presumably, staff is alpha-testing the feature on more sites.

May 2022 saw the announcement of custom designs for half a dozen sites, including a hint at Dark Mode for other sites:

we also have some ideas around increasing accessibility and customization by bringing dark mode and other more accessible-centric designs beyond Stack Overflow

4
  • 14
    this is good to know. sadly, though, it make me reeeeally annoyed, because if the network sites aren't going to implement it, then I may as well go back to DISABLING it on stackoverflow since the Stylish plugin with "Stackoverflow Dark" was working fine across the board. userstyles.org/styles/35345/stackoverflow-dark Commented Mar 30, 2020 at 23:58
  • 6
    "The artwork on some of those sites simply can’t be made dark because we don’t have access to the original art files". Third parties themes' apps and websites don't have too! "The themes will always be better as-is". I don't agree with that if enough effort is put for this feature. That's underestimating your skills! It doesn't have to be made for all sites at once. You did it well on StackOverflow, you could then do it on math.stackexchange.com, just an example, and see how it goes! Looking for percentage of users using the dark and the light theme for instance. Commented May 17, 2020 at 2:22
  • 1
    Adding to what JKHA wrote, for most images, you don't need the original art files to make them look reasonably good for a dark mode. Contact me if you need help. Commented Aug 26, 2020 at 22:37
  • movies.meta.stackexchange.com/questions/4725/… Commented Jan 7, 2021 at 6:31
34

I've been using a popular1, open source Chrome extension called Dark Reader (also available for Firefox and Safari).

It works pretty well right out of the box for most sites, in my experience, but you can adjust brightness, contrast, sepia, grayscale, etc through a little slider panel. You can also manually adjust the underlying CSS it generates. The extension further allows you to preserve settings and enable/disable behavior on a per-site basis.

Here's a sample of what meta.SE looks like, given my configuration:

Dark Reader meta.SE sample

1 As of 2020-10-14 12:18, the Dark Reader Chrome extension has over 2 million users and is rated 4.7 out of 5 stars, based on 7,466 reviews.

9
  • 1
    How reliable is Dark Reader? That spooky note that appears before enabling it about how it accessing all our data is concerning. Commented Oct 14, 2020 at 14:42
  • 4
    You'd get that from any extension which has to access the DOM on every site. It has 2M users (according to the chrome webstore) and it's open source, if you're concerned about its implementation: github.com/darkreader/darkreader Commented Oct 14, 2020 at 16:14
  • Oh, understood. Thank you. Commented Oct 14, 2020 at 19:58
  • I wish there was an official dark mode. With Dark Reader for example, the accepted answer checkmarks are indistinguishable from being unchecked. Very frustrating. Commented Nov 8, 2022 at 14:05
  • 4
    @JVC I've personally transitioned to using Chrome's built-in dark mode (chrome://flags#enable-force-dark) with selective inversion of everything. It's potentially worse in some cases, though... since with Dark Reader you can tweak the override CSS to correct display quirks. Still, it's nice to not have another extension which can access everything. Commented Nov 10, 2022 at 14:49
  • I like Dark Reader, but for example on vi.stackexchange.com it doesn't give a good result. I would like to know that I have a solution for all the pages at least on Stack Exchange. Commented Mar 1, 2024 at 16:32
  • @ArpadHorvath You can make customizations per site. That flexibility is part of what makes Dark Reader attractive over the chrome://flags option. Have you tried the dynamic theme editor via the Dev Tools button on the extension popup? That should let you tweak individual styles. All of that aside, the site seems fine on my setup: snipboard.io/etG8dI.jpg. btw, shouldn't you be browsing through LYNX or something anyway? :P Commented Mar 1, 2024 at 17:32
  • 1
    Other people recommended using Stylish and I think it got more upvotes.. to me this is a way better answer and works great after enabling it. Thanks! Commented Jan 30 at 18:17
25

I also support a dark theme. Until then, you have these options:

  • you can use stylish which is available for Firefox and Chrome and look into userstyles
  • if you're using Gnu/Linux
    • and have compiz installed, you can always invert the colors of your active window (look for "Negative" in the CompizConfig Settings Manager).
    • without compiz there is an alternative solution via xcalib -invert -alter.

It's how I circumvent white-background-dogma that's cursing the Internet.

0
20

Currently the "dark mode" option is added to the Stacks (Stack Overflow design site).

I hope, in near future it may implement into all the Stack Exchange sites too.

GIF from Stacks:

enter image description here


Update on February 06, 2020:

The "dark mode" option is added to Stack Overflow Blog too.

2
  • This made me curious, so I inspected the website when turning on dark mode and it looks like a theme-dark class gets applied to the <body> tag. I tried manually adding the theme-dark class using inspector on stack overflow and voila, dark mode. I'll leave it to someone else to create a userscript/style. Commented Mar 20, 2020 at 4:11
  • 1
    Also, it looks like the theme-system class is used to match your OS setting. Commented Mar 20, 2020 at 4:19
13

For anyone using Google Chrome, there is now an experimental setting in the latest version of Chrome (78.0.3904.70) which forces dark mode on websites even if they don't have a dark mode.

The instructions to enable this feature can be found here: https://www.techradar.com/news/chrome-78-arrives-on-all-platforms-with-forced-dark-mode

This is an experimental option at the moment, so you will find no reference to it in the Settings menu; instead you'll have to enable the relevant flag within Chrome. Just pay a visit to chrome://flags/#enable-force-dark and choose an option.

You can opt for simply Enabled, or you can experiment with different method of dark mode implementation such as RGB-based color inversion, or CIELAB-based inversion. You may need to spend a little time with each to see which one works best for you.

Unfortunately this setting affects all websites and there doesn't appear to be a way to only target specific websites (i.e. SE). Also this is an experimental feature so it may be pulled at some point. But it seems like a good option while it's there.

Here is how this site looks like with the setting enabled:

MSE with Google Chrome dark mode

2
  • 2
    man this is the single most powerful setting I have ever seen. Thanks a lot <3 <3 <3 Commented Jun 28, 2021 at 10:08
  • The option to install the Chrome/Edge plugin to me is a better option than this. Commented Jan 30 at 18:18
11

I see a couple problems with doing this.

First, there currently is no way to change to any different theme on a per-user basis. So that's something that would have to be implemented. I don't think it would be all that difficult, really, but still that's an non-trivial amount of work.

Second, the themes would have to be populated. Who will create these themes? Will they be user submitted? If so who would approve them? Would there be safety potential concerns? (I'm not a front end guy, so I don't know, could someone put 'bad things' in a css?) If it's internal would this the next intern's project or something?

Third, the themes would have to be maintained. When there's a formatting problem, we'll have to ask "What browser, what SE build, oh and what theme?" It's another piece of the puzzle that would just complicate things.

Now, who doesn't like the idea of customization? I think it's great when there's multiple themes. Stack Overflow has so much orange I feel like it's Halloween all year round!! But honestly, I think the costs far far FAR outweigh be benefits we would receive from a feature like this.

5
  • 7
    Good answer, and a longer version of the objections you are raising can be found (on a different topic) here: steve-yegge.blogspot.com/2009/04/…. Conclusion of that long blog post: "Shit is NOT easy. Remember that. Shit is NOT easy. If you think it's easy, then you are being naïve. You are being a future VP. Don't be that way" Commented Nov 9, 2011 at 8:38
  • 4
    Why should I as user care it it is easy or not. My users also do not care if a task is easy or difficult. They just give me more time if something is difficult. Commented Nov 9, 2011 at 10:02
  • 6
    Don't get me wrong: the developers that work on the Stack Engine are not afraid of difficult work. They're just unlikely to take on a project with this much work involved for such a small net gain. Commented Nov 9, 2011 at 14:03
  • 7
    "small net gain" is simply one the most requested things on the site. you guys talk as if creating a dark theme is harder than rocket science. Commented Mar 31, 2019 at 14:12
  • For starters, things are a little different than they were in 2011, but I still think it makes sense even today. It's hardly even close to the most requested features. Sort meta by votes, this question (the canonical question for it) ranks as #250 with less than 100 votes over eight and a half years. It's just not worth the time. If the April Fool's joke has a CSS issue, literally no one cares. If the real site has a CSS issue, well that's a bigger deal. Commented Mar 31, 2019 at 16:16
11

It's finally here on Stack Overflow, https://stackoverflow.com/users/preferences/

You can change it from the preferences.

2
  • 7
    sorry but the question is for stackexchange site not for stackoverflow one Commented Mar 10, 2021 at 11:11
  • 5
    This answer is more valid than you think, they've actually implemented a dark mode that can either follow user's theme or be forced to light/dark with optional high contrast (accompanied by a blog post explaining the technical challenges). This is great, but the question now becomes When will this new design be available on other sites? It's been deployed for over a year on SO, afaik what's left for all other sites is just pick the dark and high-contrast theme color. What are they waiting? Commented Dec 10, 2021 at 3:31
9

It is ridiculous 13 years later this is still not implemented. From a usability/accessibility viewpoint if someone relies on dark mode on Stack Overflow they obviously will want dark mode on all other stack exchange sites they visit.

I read some lame excuse that providing dark mode for other sites is "too hard" as it needs custom dev work/graphic design for every site to ensure text/images are not obscured. No it does not, that's the letting the perfect getting in the way of the good.

Some here have gone off on a tangent about themes. We do not need full theming support. Instead just provide a "default" dark mode option for all stack exchange sites, and a clear warning that it may not be perfect for all pages. (ie what dark mode most browser extensions do).

Then let the user decide if the trade off is worth it. Hint: 99% of the time it will be to simply get rid of the expanse of blinding white background.

This setting should be global for all stack exchange sites (ie setting background and text color), but then can be turned on/off on each site as needed.

1
  • @Jeremy was that meant sarcastically, or literally? It’s hard to tell, from text alone. Commented Jan 22 at 4:13
6

It's possible to have alternate CSS themes for sites — it's even common to have alternate themes designed specifically to support printing — and browsers often (always? I dunno) have an built-in mechanism for selecting between the themes at the user's request. I certainly remember using this with Firefox on a number of sites, but haven't tried for a while to be honest. However, that doesn't mean that it is necessarily a wise thing to do. In particular, the alternate theme would need to be developed and maintained; surely that developer effort would be better spent elsewhere?

If you really want your own style, force your own stylesheet that overrides key things like colors (you probably want to leave the layout the same though). I'm sure that's possible, and it puts the cost of maintenance squarely on those who really care (i.e., you).

6

Came here and realised that this still isn't a thing! You can use Stylish to either create your own dark theme or there are a number of dark themes available (I don't think they're that great but I prefer a slightly broken dark theme to the current white theme).

Would definitely prefer it to be officially supported, but this is a workaround if you're desperate!

3
  • 1
    Well, Stylish was already mentioned four years ago: meta.stackexchange.com/a/112403/152859. Commented Oct 8, 2015 at 11:06
  • Ah geez, totally missed that. I thought the entire answer was about Compiz. That's what happens when you glance over other answers. Commented Oct 8, 2015 at 11:08
  • 3
    Well, you did add a link that isn't there, so the answer isn't worthless. :) Commented Oct 8, 2015 at 11:13
6

On Android phones, one can use Opera's built-in dark mode or Firefox + some dark theme extension such as Dark Reader:

5

You can also use Stylus. It is available for chrome but also available for firefox and opera. I'm not sure about other browsers.

Screenshot:

enter image description here

5

I will attempt to explore the technical details of "Why is this feature [the toggle] missing [disabled outside Stack Overflow]?". Stack Exchange added some shared code on March 10th, 2020, (before, after) to all sites but it was not enabled. That can be done with one line of JavaScript code as shown below. However, attempting to do so, it quickly becomes evident why they didn't enable it, even though it was added to more than just Stacks and Stack Overflow Blog. It's overall incomplete as the visited link color has unfixed accessibility problems compared to Stack Overflow:

Stack Overflow Stack Exchange
Stack Overflow closed off-topic question notice Meta Stack Exchanged closed duplicate question notice

Their code doesn't work on https://stackexchange.com/ yet, except for the tags. The text is unreadably white-on-white on other sites:

English.SE Math Overflow
English Stack Exchange home page "Top Questions" illegible unless selected Math Overflow home page sidebar illegible and tags uninverted

Not that black-on-black is readable:

Ask Ubuntu Skeptics.SE
Ask Ubuntu question list titles unreadable Skeptics Stack Exchange question list titles unreadable
// ==UserScript==
// @name         StackExchange dark mode (incomplete)
// @version      2025-04-03
// @description  Attempts to enable Stack Exchange Inc's own dark mode
// @author       daniel.z.tg
// @match        https://*.askubuntu.com/*
// @match        https://*.mathoverflow.net/*
// @match        https://*.serverfault.com/*
// @match        https://*.stackapps.com/*
// @match        https://*.stackexchange.com/*
// @match        https://*.stackoverflow.com/*
// @match        https://*.superuser.com/*
// @run-at       document-body
// ==/UserScript==

(function() {
    // NOT working for all sites
    document.body.classList.add("theme-dark");
})();

I suppose this userscript could work if you stick to certain sites, don't care about flashing, and your computer can't handle Dark Reader's CPU usage. Otherwise, I recommend that you stick to Dark Reader.

3
0

Note: I have been working around this with the following shoddy userscript that just inverts brightness:

// ==UserScript==
// @name         Simple Dark Mode
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  my eyes
// @author       starball
// @exclude      *://*/*.js
// @exclude      *://*/*.js?*
// @exclude      *://*/*.json
// @exclude      *://*/*.json?*
// @exclude      *://*/*.css
// @exclude      *://*/*.css?*
// @match        *://*.stackexchange.com/*
// @match        *://meta.stackoverflow.com/*
// @match        *://chat.stackoverflow.com/*
// @match        *://socvr.org/*
// @match        *://*.askubuntu.com/*
// @match        *://*.superuser.com/*
// @match        *://*.serverfault.com/*
// @match        *://*.mathoverflow.net/*
// @match        *://*.stackapps.com/*
// @match        *://metasmoke.erwaysoftware.com/*
// @match        *://rodgort.sobotics.org/*
// @run-at       document-body
// @grant        GM_addStyle
// ==/UserScript==

(function() {
  'use strict';
  // note: I originally wanted to just filter on the body, but sites all have
  // their own layout things that are just not worth trying to work around.
  // This might be a bit more perf intensive, but at least it doesn't mess up
  // layout expectations.
  const filter = document.createElement("div");
  Object.assign(filter.style, {
    position: "fixed",
    inset: "0",
    contain: "strict",
    zIndex: "2147483647",
    pointerEvents: "none",
    backdropFilter: "invert(1.00) hue-rotate(180deg) brightness(1.3)",
  });
  document.body.prepend(filter);
  GM_addStyle(`
    body {z-index:0;}
    img, video { filter: invert(1.00) hue-rotate(180deg); }
  `);
})();

I've been too lazy to add @match headers for sites I don't frequent.

2
  • 3
    Does this provide any benefit over catch-all solutions like darkreader? darkreader.org Commented Mar 27, 2024 at 4:02
  • @Mast nothing significant. and my thing has flashing issues on new tabs before the userscript loads (quite painful). I also don't do anything to handle human light sensitivity differences between dark and light. but it's somewhat easy to configure contrast and brightness. It kind of only exists because I wasn't really interested in extension hunting, and was interested in trying out an idea. It's good enough for me. Commented Mar 27, 2024 at 4:23
-2

Objective things

Note that IDE is not a webserver, IDE supports customization of colors initially.

Some time ago I've made a custom CSS for SO site for use with Stylish/Stylus plugin (not dark, but you can find dark themes). So I know that the SO's CSS is (or was at that time) really complex and that makes things hard. (It's main CSS file is ~5000 lines (400kb file), i.e. 10 times bigger than a CSS should be).
Specifically with a dark theme, it would be hard to adjust all corners of this site, there are many images and colored backgrounds. Too many elements would require manual adjustment.

If speak about feature requests towards themes, I'd wish first that the CSS reduces it's complexity radically. This would allow easy customization via plugins and solve the issue once for all and for everybody.

Subjective things & opinions

Some people want a dark theme, some people want e.g. better fonts, layout, ans so on. "Dark theme" does not mean anything specific, there can be many different dark themes, why you think the one you like would be better than some other "dark theme"?

And finally, I just think all these dark themes is just a gimmick (or exceptionally a technical requirement e.g. for improving battery life or working in dark environment). Moreover as someone who understands things from UX and readability issues, I'd just recommend to always stay with black text on light background when you have textual content. In other words, making dark theme for an informational site is initially a bad idea. It might be ok for Youtube or online cinema interface, but not for text-centric media.

7
  • 15
    It's not useful to classify other people's desire for an objectively more healthy interface as "a gimmick", and it's disingenuous to say that there is any confusion over what a "dark theme" means. Considerable scientific research, starting with radar displays before computers were commonplace, shows that staring into a white light for extended periods of time causes eye fatigue. Your recommendation, while certainly popular, is scientifically unfounded. The only environment where white backgrounds are preferable is under florescent tube lights, which is a common but unhealthy computer setup. Commented Oct 24, 2019 at 17:11
  • @Medievalist Well, I specifically mentioned "text". Dunno about radars and such, I beleive similar rule applies - in the darkness use negative polarity, in the light - use positive polarity. Ideally adjust bg color to match the environment. Just how my vision works at least and since you mention, afair scientific research proves more or less well that it is so by the majority of human creatures. Commented Nov 7, 2019 at 21:40
  • Just consider you have a lot of work and have to read a lot of texts late at night. Tell me that you would prefer to read them on a big white screen instead of a black screen with your tired eyes. You don't even need scientific research for that. Commented Jan 20, 2020 at 1:28
  • @wada how does that contradict with the answer and my last comment? I'd just turn some lights on if I need to read a lot of text. Commented Jan 20, 2020 at 20:50
  • 1
    I disagree mainly because my eyes tell me to,, I had central serous coreorethinopaty that couldnt fix 100% (more like only 30%) and cant laser it for very specific reasons, since then its dark mode forever or light mode for just minutes. Commented Jun 9, 2022 at 22:23
  • @arana does it feel like blurred text pattern or just like too sensitive to the light? Just curious. Have you tried black text on 50% grey background and set text to bigger size additionally? Commented Jun 12, 2022 at 14:03
  • @MikhailV My eye problem is blurred (unfocused) objects on my left eye, and also I cannot see things pretty well if its a little dark (black remote control on black table = nothing on table for me, lack 3d or such) this gets worst when reading dark font on white BG it gets al blurry and distorted after half hour. Commented Jun 14, 2022 at 18:07

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.