179 comments

[ 2.8 ms ] story [ 200 ms ] thread
This app is a godsend for people with eye floaters.
I was about to post this. My office has way too much fluorescent light so I can see all my floaters. This extension keeps me sane.
On Firefox, I love the Owl - Dark Background app.

https://addons.mozilla.org/en-US/firefox/addon/owl

ooh, this one is way less intensive on resources.
I'll have to try that. I never had performance issues with Dark Reader on Chrome, but I find it to be slow on Firefox.
I find it slowing my Chrome too. Is there an app that we let me benchmark my browser performance with Dark reader app and without dark reader app?
Then you should try switching to Filter or Static mode.
It isn't the fastest, it's true. I'm not sure if this is a browser/CSS rendering limitation or a Firefox issue, so I've just dealt with it. It's best to not use Owl on video streams.
It seems free on Chrome and Firefox but £5 for Safari... :( Why?
The quick answer is: it makes it possible to work on project full-time. Only 1 of 2000 makes a donation https://darkreader.org/blog/500k-users/
I agree about selling the product. My question was about Safari, and why only on Safari users have to pay. Isn't it a bit like having your website say "works better in Chrome"? Don't get me wrong, I am still grateful that the extension is available on Safari, but it just seems a bit unfair
My thought process:

Apple is the only place I have to pay to develop. Apple is a luxury product. Apple users can pay luxury prices for my time.

I'm trying different approaches. The crowdfunding was not very successful, so I decided to try making the app paid for Safari, since the platform is technically different and users count is low. App Store makes its best in selling the apps.

At the same time Chrome Web Store is not suitable for paid apps, today it looks like a big dump: it is filled with outdated and poor made extensions. Raking system makes good apps hardly discoverable. Also paid Chrome extensions work only in 36 countries. Dark Reader owes its popularity to Hacker Vision extension that became paid some day. Maybe that's the reason why some developers prefer monetizing their extensions by selling users browsing history.

One reason might be that you need to shell out $99 every year to be allowed to publish official Safari extensions.

It is, theoretically, possible to distribute without the App Store, but users need to activate Developer mode and do quite a few manual steps. It's not a click (or drag and drop) like FF and Chromium Based browsers.

Dark Background and Light Text is great also ...

https://addons.mozilla.org/en-US/firefox/addon/dark-backgrou...

Fully customizable so you can don't have to go full black/white, you can copy and dark theme you like and use that as a default.

I've never bought anything so fast. $7 for the safari extension sounds like a lot, but for how much time I spend on the web and how glaringly white most pages are when OS X has done a good job with Dark Mode, it's well worth the price.
I always found managing all my Stylus/Stylish styles too cumbersome and then I found this a while ago. Instantly donated. It's amazing.

The only gripe I have is that it is a biiit heavy on the resources.

While it is nice, there are more lightweight and snappy ways to achieve a dark background (or desirable styles in general) -- such as setting a global CSS, using built-in color overriding (at least in FF it's available, along with font overriding), using web browsers that don't apply CSS. Some people even use system-wide color inversion. Each method has its pros and cons though.

Stylus is one of the handy FF extensions, which allows to switch between CSS themes quickly/easily.

Dark Reader also offers static CSS support https://darkreader.org/blog/stylish/

Global CSS will work well on text websites. For many others it will break up the coloring and make page parts hardly distinguishable.

Any plans to implement proper UserStyles.org support where themes can auto-update like with Stylus? Some of the most popular style sheets update quite frequently.
Stylus already does it well, so I think you could use Stylus for such websites. UserStyles.org is still owned by SimilarWeb, so I would stay away from it. What is planned is to add some static themes for popular websites.
I tried this a few months back, I liked the visual effect and the configuration flexibility, but it ate at my CPU waaay too much. Anybody else have this? Was meaning to look for a lightweight alternative. Maybe I'll try this extension again to see if it's still a resource hog.

Note: I'm on Firefox.

unfortunately still a bit resource intensive, agreed that I like the extension if I ignored that bit
I’m using Night Reader for Safari right now, it allows using hotkeys for toggling between dark and light. Didn’t notice any hit on the performance.
With Safari on macOS, the OS reports a negligible energy impact for the extension.
Just added the extension to give it a whirl. My CPU usage is 3% to 4%, memory is ~37%, on an i7 wih 16 GB RAM (and about 100 tabs open in Firefox).

I like it. I was looking for something like that for a while. Nighttime browsing on LED monitors seriously hurts my eyes, even with night light settings on. This looks like it'll do the job. I'll know tonight :)

Wish you luck. The resource usage spikes I was experiencing were happening sporadically and some sites were more prone to it than others. I've just installed it again, we'll see how it goes.
I have used it a lot on both Firefox and Chrome. It's much slower on Firefox.
Bad performance in Firefox is a known issue and I'm working on improving it. It's not an issue in Chrome and Safari. Low performance can be noticeable in new GMail design, but the reason is their heavy stylesheets full of unused code and images, that Dark Reader tries to analyze. Some day it will be fixed by adding some static themes for popular websites.
I just bought for Safari and immediately uninstalled because CPU usage was too heavy and didn't come down. Also, permissions are way too intrusive, why does the extension need to have access to all of my browsing history?
The browser doesn't separate what injected script can do and what it can't. Regarding Dark Reader, it needs to know page URL to determine if it is blacklisted by your settings or not.
How are you seeing what CPU usage is used on a per extension basis?
I'm not. Wish FF had that.
a fast and simple alternative for firefox (and android) is this one:

https://addons.mozilla.org/en-US/firefox/addon/night-light-m...

please let us know if it performs better for you! (i'm the author)

I've tried it just a few hours ago, at the moment it's my goto alternative, cheers! The only downside to your extension is that I can't regulate the visual contrast, so some text, like HN content text, is a bit too glaringly bright.

Also, I'm not sure why, but the monospace text in the HN reply box is quite unpleasant to read when inverted.

But good effort! Is it open source?

CSS filters can cause heating of your phone.
Maybe my browser is setup incorrectly but I can't get your addon to do anything (arch). Same is true for DarkReader.
I experienced the same thing. Waiting until the problem is fixed to use again but it was a really useful albeit slow extension.
Great job. Install it and instantly love it.
(comment deleted)
I've been using this for a few weeks and overall I'm happy with it. I do find that some complex web apps like gmaps or gmail slow down with this extension enabled. Particularly so in Firefox.
Gmail is pretty slow in Firefox no matter what.
I'm a big fan of dark mode, particularly because I was of the impression that it was easier on the eyes.

Turns our, it's not so black and white...

In a study from the 1980s: > However, most studies have shown that dark characters on a light background are superior to light characters on a dark background (when the refresh rate is fairly high). For example, Bauer and Cavonius (1980) found that participants were 26% more accurate in reading text when they read it with dark characters on a light background. Reference: Bauer, D., & Cavonius, C., R. (1980)

So perhaps dark mode actually puts more strain on the eyes? At least when the user is not in a dark room.

Very interested to hear about similar research done in this area.

Further reading here: https://ux.stackexchange.com/a/53268/22606

This is 1980 in a time before OLED screens
Anecdotally, I very much doubt dark mode puts more strain on the eyes at night time.

During the day, I could see the "light mode" being preferable. But at night the brightness of devices seems quite damaging to eyesight and sleep.

If you have dim lighting, you can cause eye strain, and in extreme cases actual eye damage, by having small points of bright light in your vision like a phone or computer monitor because your pupils will be more relaxed.

Even now with the benefits of warmer color temperatures becoming mainstream knowledge, most people still use blindingly bright screens with high color temperatures, which causes more eye strain.

Also when you're staring at a monitor for 8-12 hours a day, it becomes less about readability and more about comfort. That's why most programmers prefer dark themes.

There's so many mixed signals and contradictory studies about eye strain and computer displays that I'm almost forced to conclude as a layman that it's totally subjective and up to the user. I've read about blogs and apps which go with a light design to reduce user strain due to being very text-centric, but then again there's studies that say programming benefits from a dark view for the exact same reason.

I've read about apps that switched from light to dark and saw a drop in engagement, but the same thing has happened for apps that go from dark to light, so perhaps it's just poor experimental control and the dip is just what happens to the user base whenever you change up the UI at all. There's always a backlash against that.

The studies are never very rigorous, either. There's also lots of persistent myths and misconceptions left over from yesteryear, such as the myth that being close to a CRT will actually damage your eyesight. I think that's conflated with dark-vs-light because of the typical retro image of a CRT displaying a green-on-black CLI. Seems that some people think reading strain means real eye damage, perhaps even permanent damage, instead of what it really means--quicker exhaustion and perhaps a headache.

The light UI has really won out completely in the wider world of consumer UI, while the dark UI is almost ubiquitous in certain niches and communities. People are always asking for or writing blog posts about the ultimate answer. I think it should just be up to the individual: what do you prefer? And UI design should move towards standards to support this user-based decision, offering both a light and dark mode that is easily toggled based on personal preferences and the ambient lighting where the UI currently exists.

using it right now, have been for a while :) sadly certain sites with lots of dynamic content or tabular data (zendesk comes to mind) chokes the browser, i have to turn off the dynamic mode which imho is the best feature of the plugin.
This is a beautifully done extension. Using it both in Safari and in Firefox Nightly right now.
This looks to have a more polished GUI than Dark Background and Light Text (on Firefox, particularly on mobile), but I'm not sure it offers the same flexibility of multiple ways to achieve color changes. I've run into a few sites where one method didn't work well but another did and having all that built in is handy.
I'm almost blind (legally), and this is the first extension I found that PERFECTLY fixes the contrast so I don't need 20-point font zoom to be able to read it. I have tried dozens of FF extensions to adjust contrast, dark theme, etc... none have worked this well.

I wonder if the creator is a fan of

https://contrastrebellion.com/

It Just Works!

I'm buying this tonight. Thank-you very much.

i made a similar extension some years ago -- it tries to be fast and injects very little code. i'm curious to know how the performance compares:

https://github.com/conceptualspace/nightlight

Your code is based on CSS filters. Dark Reader provides this mode too, but also allows users to fix and share wrongly inverted parts https://github.com/darkreader/darkreader/blob/master/src/con...

Dynamic mode is slower at start, but has no impact on performance after all the stylesheets were analyzed.

nightlight is "dynamic" by using a simple heuristic after pageload to deinvert if necessary. but the crowdsourced filter is a great idea! might borrow it :)

does your extension run on android? there are two motivations for nightlight aside from its obvious purpose:

1) be fast on android 2) keep source code simple as possible so everything the extension does is obvious. when i wrote nightlight it was difficult to evaluate the safety of the other extensions at the time, something important to me for a plugin which has full access to all browsing

Yes, it works in Firefox for Android and in Yandex browser. The only issue with Firefox is white user interface and white default color.
The results are really impressive, but any large page is very noticeably slower to load.
What browser are you using? I've been using this extension for a couple years and I notice that it is much slower on Firefox compared to Chrome.
I often use the reader mode in Firefox. Although it is not the same as a dark mode for a whole webpage, it is pretty good at removing clutter and making a web text easier to read. With the added bonus that there are no permissions involved (although I suspect the latter are absolutely necessary for the addon to work, without sharing data to 3rd parties).

It is even possible to save a bookmark in Firefox with reader mode already enabled, by adding about:reader?url= before the url.

There is a nice extension, Automatic Reader View [0], which automatically enables Firefox reader view, if available for the visited page. I even used it in blacklist mode for a while, which wasn't bad but after some time I ended up using it in whitelist mode, because it was too extreme for me.

[0] https://addons.mozilla.org/en-US/firefox/addon/automatic-rea...

You can set dark mode in reader view (firefox mobile)
In desktop Firefox there is a dark background option, which is my favorite, along with serif font. I used to postpone my reading list until reading mode came about, because the white screen is just too much sometimes.
How can I trust that this extension, which has access to every page I visit, doesn't steal my data? How can I trust that if someone else takes over the project and releases an update, that my data is still secure?

Looks great, but I'm just so skeptical of browser extensions now.

the need for trust applies to any software you install. this is usually just based on reputation when you can't verify the quality and integrity of the source itself (as is often the case)

that said, i had the same concerns so i wrote my own :) the source code is intentionally very short and simple, so it should be extremely clear what it is doing:

https://github.com/conceptualspace/nightlight

Install the extension (in a throwaway Chrome profile), review the code, then repackage it (small modifications needed to package.json) and install it in developer mode. And/or put it up as a repo if you wish (and license allows it).
Firefox add-ons pass full source code review before the submission after the Stylish incident. Safari extensions also pass manual review, Apple asks developer to send an ID card photo. Not sure about Chrome, you have to simply trust me, the code is not obfuscated and you can always locate the files and see what the extension does in your browser. Google recently announced some security changes https://blog.chromium.org/2018/10/trustworthy-chrome-extensi...
to be less disingenuous, the review process seems to be limited to looking for specific known attack vectors, rather than a full review or evaluation of the sourcecode (which would be impractical). that said, yes, someone at mozilla does at least eyeball it
> Apple asks developer to send an ID card photo.

To me this sounds like the most vital thing to improve trust. Having browser developers review all the source code in detail is unrealistic, and even then, won't defeat underhanded programming (is it a bug or a deliberate vulnerability?). Legal accountability combined with auditability at least provide a deterrent to publishing malicious software.

Yah I am sure hardcore hackers are giving up the gig b/c they need a PHOTO of an ID! And now the ones who are legitimate have to trust a company with their IDs? This seems like a VERY weak stop-gap measure to a very difficult problem.
Is that really true? I was really alarmed when this extension requested access to all websites and added a ton of obfuscated code with the latest version for no apparent reason: https://addons.mozilla.org/en-US/firefox/addon/restore-old-t...

I've reported it, but nothing seems to happen.

yes. to submit to firefox you’re required to provide them with the source code, but you may transpile it so long as they can verify that it’s the same AFAIK?
DO they also inspect the hundreds of npm packages an extension might use?
> Apple asks developer to send an ID card photo

Is this something specific to Safari extensions? I have never heard of anyone having to do this.

To his credit, the author has released the source for the Chrome and Firefox versions:

https://github.com/darkreader/darkreader

However, I posed the same question in the MAS about the closed-source Safari version, which requires full access to webpage contents ("Can read sensitive information from webpages, including passwords, phone numbers, and credit cards on all webpages") and browsing history ("Can see when you visit all webpages").

The author's response boiled down to "trust me" and "trust Apple's review process".

Shortly after mentioning recent headlines highlighting weaknesses in Apple's review process ("More malicious apps found in Mac App Store that are stealing user data" https://appleinsider.com/articles/18/09/07/more-malicious-ap... , "Mac App Store apps are stealing user data" https://blog.malwarebytes.com/threat-analysis/2018/09/mac-ap... , etc), Apple deleted the review, but a cached version can be found here: http://www.gadgeteur.com/2018/11/26/dark-reader-for-safari-a... and here: https://pastebin.com/DxsWcaj7 .

EDIT: Other than the permissions issue (which was unfortunately a show-stopper for me), I was very pleased with the Safari extension's functionality; it could be a good fit for those who restrict their web browsing to non-sensitive sites or who can remember to disable it when necessary.

But there's no proof that the published source code is the source code of the extension! You still have to just trust them
You can always load your own from source.
Sure - but do you? Does anyone?

EDIT: a better solution would be if the store itself allowed you to inspect the source that went into building the plugin. Then you would only need to trust the store itself, which you already do (when you trust the browser).

It's quite common among many groups of people to download and install locally as it also protects you from unwanted automatic updates. For instance, those using MetaMask or Scatter to interact with a blockchain are often advised to install the extension offline.
I have yet to meet a person who did it though. Though I'll admit that the argument against automatic updates is a good one..
> the store itself allowed you to inspect the source that went into building the plugin

Or at least build it from the source code, like F-Droid.

You don't need to install from the store.
There's an extension that allows you to view the source of any Chrome extension direct from Chrome's repository.

"Chrome Extension Source Viewer" I use it to audit every single app that I give permission to read each site.

Sorry, I'm not sure that publishing a paid app source code would be a good idea. There is a chance that somebody will publish the same app under different name. Somebody has already published a crack for it. And another Safari app already reuses some code from Dark Reader for Chrome.

There was a long discussion regarding this review https://www.reddit.com/r/apple/comments/9y0s2a/dark_reader_d...

You know, some Apple developer can also put some malicious code into Safari, but for some reason you trust them and use their browser, even though they used to slow down older iPhones without a warning, forcing users upgrade to newer devices. Who knows what they will do the next time.

> Sorry, I'm not sure that publishing a paid app source code would be a good idea.

In an earlier comment on reddit, you wrote[0]:

"Safari version is not open source yet, but it did pass a manual review too."

which implies it would be open sourced at some point. Have you changed your mind?

> There was a long discussion regarding this review...

Thanks for the heads up. I'm sorry they didn't include the full context, including my comments; the links I shared above do.

[0] https://www.reddit.com/r/mac/comments/9n1eiq/mojave_dark_mod...

When the amount of donations will be enough, then I would be able to publish the source code of the Safari app. But currently it is the major source of revenue and it lets me continuing the development and spend as much time as possible.
(comment deleted)
That's a valid concern. Certainly an easy way to Target an audience to get at a rich set of data. But who's to say Chromium isn't doing this already anyway?
Since there's quite a few of these dark mode extensions with very variable features and compatibility/robustness, I feel like there's space for a comparison chart type thing. With side by side screenshots of how they handle certain websites and how they influence performance (that might be tricky). If someone want's to steal that idea go ahead, otherwise I might whip something up somewhere over the next weeks.
Dark Reader provides all 3 possible modes: - Static: simple and fast. - Filter: simple, but uses GPU very much and usually inverts already dark parts. - Dynamic: complex, but tries to achieve the best visual results. There are some known issues and the work on it is in progress.

Here are some more details https://darkreader.org/help/en/#theme-generation-modes

Really awesome extension. I am just waiting for the developer to fix Dark Reader breaking sVim link hinting on Safari. It makes link hints unreadable and thus I can't use the extension yet although I really wish I could.

A hotkey to turn on/off the dark mode is also coming soon and with that the extension will be perfect.

Web pages are slow to load after installing this extension.
Been using using it for a couple month (on chrome), very happy with it. The only thing I wish would be for the the "theme preference" (sepia, contrast etc.) to be on a website per website basis. I don't have the same needs on say HackerNews and Google Maps