Max 8 default dark mode

Eugenio Scalfi's icon

Hello, today I created a dark mode version of the "default" Max 8 theme, by installing it you can have global dark mode across the whole program (not a single patcher like with styles!) and finally ease your eyes while coding, you can alternate between the "default" theme and this dark mode in the max preferences (interfaces > Color Theme).

You can find it here: https://github.com/MagistraNocte/Max-8-Default-Dark-Mode
To install, follow the instructions at the link and in the readme file.
Feel free to contribute, suggest changes and report problem in the github page.

Have a nice, eye-rested coding!

OCH's icon

can you do a solarized mode?
:D

Roman Thilenius's icon


not sure if that makes things better. max already lacks outlines, parting lines, contrast, everywhere, which makes it really hard to read sometimes.

Eugenio Scalfi's icon

Hi Roman, what do you suggest changing?

Eugenio Scalfi's icon

Omar, I don't think it would be difficult given a solarized (light) theme is already present in the default themes, I'll investigate it

Eugenio Scalfi's icon

Ok seems like C74 didn't use the official color values for their "solarized" (light) theme but slightly modified them, so I can't easily batch replace them with the dark ones, they should be modified and tried out one by one, that's a little too much work for my spare time, but if anyone's interested you can experiment by opening one of the default ".maxtheme" file (in the location I provided in the installation instructions of my theme) in any text editor and modifing the colors (they're in float rgba format) then saving the file and changing the theme in the max preferences (you don't have to reboot max, just change theme)

Roman Thilenius's icon


both max 8 and windows 10 do not follow the simplest guidelines for graphic user interfaces.

i am used to move 5 windows around in under 1 seconds. impossible with this kind of stuff, as you never know where to click.

hard enough to accept that i no longer can create custom inspector patches, but here you have grey, borderless subwindows in subwindows, opening over grey in grey lines on grey background in a grey operating system.

and now you suggest to make the canvas grey, too? then you cant even see if the inspector is open or closed if you do that. ;)

Eugenio Scalfi's icon

I'm not sure i follow, most modern program is designed in greyscale because that's minimal and functional (ableton live fore example, speaking of something related to max) I don't see problems in that, also almost everything nowadays has a dark mode because the negative effects on the eyes and circadian rythms of bright, mostly white screens at night are well known by now, that should be an important concern for any programmer spending hours very focused on screens.
The default canvas is already grey, just a light shade, I made it darker and made the rest lightier and tried to keep the contrast relation between the shades in doing so, I didn't just make the canvas black, maybe the rest should be lighter and have more contrast? the inspector and the console have stripes, you can't mistake them for the canvas, but they could be brighten up if that's what you're suggesting. You seem to have an idea of what doesn't work good in the max palette, what would you suggest changing, while keeping the canvas dark grey?

Roman Thilenius's icon


no, it is not functional to keep everything in the same color. :)

except it has a similar meaning, then it would be good if is also looks the same.

for example it would be nice of all windows top bars, where you can move them, would look the same. in the above picture the top bar of the max window is white by default, in explorer it is black by default, and in the popup window in the inspector there is no toolbar at all.

you have to GUESS in all three cases where to click to drag.

even worse, in the patcher window and also in windows 10, that top bar can only be dragged in the upper half. this design doesnt make any sense, it doesnt follow the function.

do you see the word "Organisieren" on the bottom?

focus your eyes on that.

and then tell me if the "annotation" window is open or not?

now we try it the other way round.

look into the "annotation" window as if you are going to write in it.

leave your eyes there.

is the exporer window covering the bottom bar of the max window or not?

Eugenio Scalfi's icon

That is an issue with windows though, in MacOS they all looks the same (bright or dark depending on the mode) because that's an OS level design choice, nothing to do with max itself (or themes), the popup window where you enter annotations and hints doesn't have it because it's a max internal popup window and has nothing to do with the OS, but that's a very specific case and you're not supposed to be changing window focus and position while editing a hint anyway

Roman Thilenius's icon


you might think i am joking (i am) but let´s compare that to the same 4 windows my old max computer.

all windows look the same - because they work the same.

they get greyed out when in background, because this was the standard design for the last 30 years.

text entry fields are white, because that was the standard design for te last 30 years.

all inspectors were blue, so that you could see at one blink what it is, where it is, if it is still open, you get the idea.

my OS windows wear custom pictures, so that you always know on which disk or folder you are.

my max patch canvas is grey, and when you unlock it, it is white so that you can always tell if it is locked or not.

sure, it is a joke to compare that to each other.

but it should serve us as an example for good design here, because of "form follows function", contrasts, read speed and some more things.

in case you dont like the colors, you can of course also change them to your liking, and probably much faster than today.

but dont do them grey on grey with grey lines on grey background, or at least put some green lines between the different elements.

...

now let´s do the test again.

focus your eyes on "110-samples" and keep them there.

is the subwindow with the text entry field open?

now look at "octaves" and keep your eyes strictly there.

you are going to move a file from the OS to the patcher soon. does the max patch partially cover the finder window or not?


OCH's icon

edit: I've created another thread for this here


@Roman

hard enough to accept that i no longer can create custom inspector patches (...)

I happen to be looking just into that.
Under jsthis documentation there is a property about custom inspector page:

Specific to the jsui object. The inspector property, if set to 1, causes Max to look for an inspector patch specific to your script rather than the default jsui-insp.pat file. (...)

But I can't find any example or other documentation that would help understand how it is supposed to work.
Do you have insights into this?

(sorry for this tangent, @Eugenio, my jsui forum threads don't get much attention)

Roman Thilenius's icon

you are right, it probably even works somehow. just not as simple as when they were max patches.
i guess - from the looks of it - that the content is somewhere stored in a json or xml. i have no knowledge about replacing them with custom content.
what would be great would be an option for a custom subset (basic/ui/all/custom)

OCH's icon

@Roman

i guess - from the looks of it - that the content is somewhere stored in a json or xml.

were you able to find them? I could not find them.

Rob Ramirez's icon

just a quick note to say thanks for experimenting in this space and sharing your results! One tip that can make installation easier (especially when updating Max version, or using multiple versions of Max) is the theme can be placed in a package rather than inside the app.

just create a folder in a custom package called interfaces and inside that a folder called themes, e.g.
~Max 8/Packages/mypackage/interfaces/themes/mywickedcool.maxtheme

Eugenio Scalfi's icon

Thank you @Rob, I assumed it could be done with styles only, I’m updating my repo.

Tristan's icon

Hi Eugenio, my eyes thank you for sharing your work. This is just what I was looking for!

Eugenio Scalfi's icon

Happy to hear that!

Massimiliano Cerioni's icon

Eugenio, this was so much needed for my eyes, grazie!

Sophia Luna's icon

Unfortunately, there's no toggle for manually switching between a dark and light theme as some would wish. Note that this nifty little addition is only limited to Android 8.1 Oreo (at least for now), an OS that probably few non-Google phones will get.

j's icon

> most modern program is designed in greyscale because that's minimal and functional (ableton live fore example, speaking of something related to max) I don't see problems in that, also almost everything nowadays has a dark mode because the negative effects on the eyes and circadian rythms of bright, mostly white screens at night are well known by now, that should be an important concern for any programmer spending hours very focused on screens.

I'm looking for an answer to a different question about light/dark mode and stumbled on the comment above.

Just wanted to mention that dark mode actually has serious usability problems for people with astigmatism and other eye conditions. Search Google for "dark mode accessibility problems" and read a few of those pages to learn more.

Ableton Live and many music programs have accessibility problems, and the situation is getting worse as more sites and apps use dark mode without providing a light mode for people with certain kinds of vision problems.

Eugenio Scalfi's icon

Both max and ableton live have almost infinite light and dark mode possibilities though (high contrast too).
I know there is always some accessibility problem for someone (I have light astigmatism myslef, although I've never experienced accessibility problems because of it), but I think not giving the user the freedom of having a dark mode is as stupid as not giving the freedom of having a light mode, and also that the damages of light mode on the eyes and cyrcadian rhythm are much more dangerous and affect a much broader group of people (pretty much everyone) than any accessibility problem dark mode may cause, so, that said, I still think dark mode as default is the smartest and safest design choice (but leaving the freedom to choose a ligh mode to the user, this way clueless people will use the default dark mode and avoid damage, while conscious affected people will be able to select a ligh mode), thank goodness world wide design is going in that direction.

j's icon

There's an easy solution: have websites and apps always follow the user's system preferences by default.

If dark mode is default, people who can't read the screen might not be able to find the settings. It can be really frustrating, especially when using the computer outdoors and/or the settings are hidden behind menus. Not all dark mode interfaces have these problems, but many do.

I'm not sure if there is enough evidence yet to make conclusions about circadian rhythms. There's some conflicting evidence here: https://bigthink.com/health/night-mode-bad-for-sleep/

Eugenio Scalfi's icon

Now that Max 9 is out I took some time and "translated" my previous work on Max 8's default theme to the default theme of Max 9: basically made objects and patchcords brighter on a darker background, instead of the opposite, I think this way looks cleaner and easier to read, you can find it here.

Here's a comparison (default on the left, mine on the right):