Repository navigation
Replies: 6 comments
|
I suspected as much. A native dark mode theme however has significant benefits over automated darkening. For example it doesn't require yet another browser extension, that can increase the attack surface and negatively impact performance. Dark reader also cannot cover all parts of the design and loses nuances. For example the border of the Falcon icon is not visible anymore and the hover effect almost non-noticeable. |
|
While not perfect, (there are settings to configure though to minimize said behavior) it works right now with 0 effort. Implementation and syncing across scripts is not exactly trivial too. I will move this to ideas for now. |
|
I measured what this would actually take across the repo. Posting the numbers so the decision is grounded — and because the answer turned out better than expected. The expensive-sounding part is already freeTwo facts:
So Worth knowing: What the colour work costs
Two things follow. ~90% of all colour sits in each script's own CSS template literal — one or two contiguous blocks per script, not scattered through JS. Only credit_hoarder (48%) and platform_check (44%) carry significant inline/ Most of those 620 colours are drift, not design. The top 10 colours cover only 30–46% of usages per script; 125 of Apollo's 233 are used exactly once. The repo contains seven near-identical pale lavenders — It is not only colourSame measurement for the rest of the CSS surface, across the ten MB scripts:
None of that is a dark-mode problem. It is the same underlying problem: no shared base, so each script re-invented the same six components slightly differently. Dark mode is just the first thing that makes the divergence expensive. What this means for the workThe mechanical substitution is not the cost. Three things are:
Two risks worth recording now: Dark Reader plus a native theme will double-invert (so anything shipped must be off unless asked for, or detect an already-dark palette), and brand colours must be explicitly exempt — platform icons and provider colours are correct as they are, and someone will eventually "fix" Spotify green if that carve-out isn't written down. RecommendationDo it as a shared base rather than as a dark theme. The token layer is theme-source-agnostic: Stylus, a built-in theme picker, or Sequenced so every step ships on its own and stopping halfway still leaves the repo better off. Tracking issues to follow. /cc @chaban-mb — the meaning-carrying colours in point 2 are where your eye would be most useful; that is the part I would not want to decide alone. |
|
Tracking issues created, sequenced so each one ships on its own and stopping part-way still leaves the repo better off:
Scope narrowed on majkinetor's call: @chaban-mb the part worth your attention is in #564: the colours that carry meaning rather than decoration — Apollo's confidence tiers, group_therapy's row shading, platform_check's ✓/~/× and the amber "found but wrong" ring, diff highlighting, Art Station's staged/removed/error cards. Those are pale tints picked against white; on |

Uh oh!
There was an error while loading. Please reload this page.
While MusicBrainz itself has no dark mode yet @kellnerd made some excellent userstyles.
However most scripts in this repo have poor or no dark mode integration:
All reactions