Skip to main content

Settings → Appearance

Everything that decides how Mnemosyne OS looks, and a few things that decide how it behaves on the plane, live on this page. The rail entry is Appearance; the page subtitle reads Choose the visual theme for Mnemosyne OS.

Every control here applies the moment you touch it and is saved on your machine (in the app's local storage). There is no Save button. The line near the bottom of the page says it: The theme applies instantly and is saved automatically.

The sections follow the page's own order: Language, Theme, Accent color, Widget windows, Icon pack, Background, Menu bar, Canvas, Light mode (performance), Graphics Processor (GPU), then Reset appearance.

Language

A row of flag buttons, one per interface language. The names are the native ones and the app shows them the same in every language: English, Français, Español, Deutsch, Português, Русский, 中文.

The last four (German, Portuguese, Russian, Chinese) carry a violet Beta badge. While one of them is active, a hint appears: This language is in beta: some phrasings are still rough. Improvement suggestions are welcome.

The default is the language you picked during onboarding.

Reset leaves the language alone

The ⟳ Reset all action at the bottom of this page deliberately does not touch the language. Switch it here.

Theme

Two large preview cards, each a miniature window. Their names and captions are shown in English whatever your language:

CardCaption
Dark Void#0A0A0A — deep black, high contrast
iOS Light#F2F2F7 — warm gray, soft on the eyes

Dark Void is the default. The choice is synced across every window of the app.

Right under the cards, a notice explains a rule that governs the two following sections: These colours apply to the dark theme only. The other one keeps its own. (or …the light theme only…). Every colour you set in Accent color and Widget windows is stored per theme. Tuning the dark palette does not change the light one, and the reverse.

Accent color

The violet that marks every active control — pills, rails, toggles, pickers. One variable drives the whole OS: pick your own.

  • Custom accent color is a checkbox. Off (the default), the theme's own violet is used. Ticking it reveals a colour picker, pre-filled with the theme's violet, and drives one variable used by every active control in the app.
  • A small chip labelled Preview shows the current accent.

Widget windows

Tune the outline of the focused window and, optionally, the window body color.

A live miniature window (its title bar reads Preview) is drawn on the current canvas colour, so you judge the window against what it will sit on.

  • Outline color: a colour picker for the border of the focused window. Default: a light grey.
  • Outline intensity: a slider from 0 to 100 %, in steps of 1, with the value printed next to it. Default 6 %, which the app describes as barely-there.
  • Custom window color: checkbox plus picker. Off by default (the theme decides). Ticking it seeds the picker with a white for the light theme or a near-black for the dark one.
  • Custom title bar color: checkbox plus picker. Off by default. When enabled it starts from your window colour if you set one, otherwise from the theme's own bar colour. The baseline title bar is a translucent wash, which is why it can look immune to the body colour until you set this.
  • Custom canvas color: checkbox plus picker. The base colour the background layers draw on top of. Off by default.
  • Harmonize (wand icon): Derive the title bar, the canvas and the outline from the window color. Each stays editable afterwards. It starts from your window colour, or from the theme's seed if you set none.
  • Reset to default restores this section only, for the current theme: the light grey outline at 6 % and the four custom colours off.

Icon pack

Choose the icon set for the dock and system buttons.

Four preview cards, each showing a row of sample icons drawn in that pack. The names and captions are shown in English in every language:

PackCaption
Geometric◎ ⬡ ✎ — original unicode glyphs
LucideClean SVG line icons
Lucide ColorLine icons, each with its own hue
Emoji💬 🗄️ 📝 — colorful emoji set

Geometric is the default. The pack applies to the dock, the system buttons and the Settings rail itself. It changes what is displayed, not your saved dock configuration.

Background

Combine one or more layers, or use your own image.

Six tiles in a two-column grid. A click toggles a layer on or off, and several can be on at once: they stack. Tile names and captions are shown in English in every language:

TileCaptionNotes
GridRuled damier + glowOn by default, the only layer on at factory settings
InfinityFaint animated ∞
NeuralLiving connections
Neural mapLive math shape · lightA light point cloud of the topology selected in the Neural Map widget
CustomYour own imageThe first click opens a file picker (png, jpg, jpeg, webp, gif); once a file is chosen the caption shows its name and the click toggles the layer
AnimatedSandboxed code (.html/.js)The first click opens a file picker (html, js); then toggles

An active Grid, Infinity, Neural or Neural map tile shows a ⚙ gear (tooltip Options) that opens a panel right under the tile:

  • Color (all four): a colour picker. Each layer has its own default tint.
  • Grid: Cell size, a slider from 24 to 80 in steps of 2 (default 46).
  • Neural: Source, two buttons. Decorative (default) paints a generated network and exposes Speed (0.2 to 3, default 1) and Density (12 to 90, default 42). Data graph paints your real memory graph, the same one the Neural Map widget shows, in a passive background mode; the speed and density controls disappear because the real graph carries its own layout controls inside the widget.
  • Neural map: Intensity from 0 to 100 (default 60; at 0 nothing runs) and Speed (0.2 to 3, default 1).
  • Infinity: Speed (0.3 to 3, default 1) and Style: Trail (default), Pulse or Solid.

Below the grid:

  • With Custom on and an image chosen, a button Choose another image… replaces it.
  • With Animated on, a green shield notice reads Runs fully sandboxed — no access to your data, files or network. and, once a file is set, a button Choose another file… appears.
Light mode trims the stack

While Reduce visual effects (below) is on, the heavy layers (Neural, Infinity, Animated) are dropped and only the static Grid stays. Your layer choice is kept for when you turn light mode off.

Dock the global menu rail to any edge of the window.

Four picture buttons, each a small frame with the rail drawn on the edge it would take: Left (default), Right, Top, Bottom. Left and right make a column of icons, top and bottom a row. See Menu bar for what the rail holds.

Canvas

Turn the canvas into an endless plane: drag the empty background to pan the view and place your widgets anywhere.

Three switches:

  • Unlock the canvas. Off by default: the canvas is the size of your window and widgets are kept on screen. On: the plane is unbounded. Turning it back off recenters the view and pulls every widget back on screen. While it is on, the page shows how to move around: Drag the empty background to move around; the wheel over it zooms. Ctrl (or Cmd) + wheel zooms from anywhere, even over a widget — and the controls at the bottom right zoom, frame everything (Ctrl+9) and bring the view home (Ctrl+0). Stickers let the plane through: dragging across one pans, and one click selects it before it can be moved. Space + drag, or the middle button, pans from anywhere — even over a widget. The full story is on the Canvas page; the key combinations are remapped under Shortcuts.
  • Fit windows to the screen. Off by default. Off, a window keeps the size you gave it and the zoom never changes it. On, it is capped at the height the view can show and its own scroll takes over, so the bottom rows stay reachable. The saved size is untouched either way.
  • Big icon when zoomed out. Off by default. Off by default. Zoomed out past 70%, a window with no distant view of its own paints its icon big over its content, so you can tell what it is from across the board. On a board you arranged yourself you already know, which is why this stays off unless you ask for it. Widgets that build their own distant view (chat, MnemoHub, diagnostics, logs, gallery) keep it whatever this switch says.

Ornaments

Pin light elements to the canvas — they live on the plane, move with it, and can be dragged anywhere.

Five tiles, each with a ⚙ button (Configure) that opens one drawer under the grid; only one drawer is open at a time. Each tile shows its state: a family that is off says Off, one with nothing in it says None. Everything here starts off or empty, and is saved on your machine.

Clock: an on/off switch (off by default). When on, the tile names the style. The drawer offers two styles, Digital (default) and Analog. The style applies to the local clock and to every world clock at once, so the plane never mixes a dial with a digital readout.

Weather: an on/off switch (off by default). The tile shows the city, or Choose a city in Settings → Appearance when it is on without one. The drawer holds one field, City (placeholder e.g. Paris, up to 80 characters). The value is committed when you press Enter or leave the field, not on every keystroke, because each commit is a lookup at the weather provider. That lookup is the one thing on this page that leaves your machine.

World clocks: no switch; the tile reads {n} clocks or None, up to 12. The drawer lists each clock (label and time zone) with a Remove button, then a picker:

  • a search field, placeholder City, country or UTC+2…, that accepts a city, a country (in English or French) or a UTC offset; Enter adds the resolved zone;
  • an optional Label (optional) field;
  • up to 8 ranked suggestions, each with city, region and the current time in that zone (refreshed every 30 s); clicking one adds it. With the field empty, the suggestions are a spread of the world rather than the head of the alphabet.
  • No matching time zone when the search finds nothing; Unknown time zone when what you typed cannot be resolved on Enter.
  • At 12 clocks, Limit reached replaces the picker.

Photo frames: the tile reads {n} frames or None, up to 30. The drawer lists one row per photo (file name, full path in the tooltip) with Freeze / Unfreeze (locks the item in place on the plane) and Remove, then Add a photo… (png, jpg, jpeg, webp, gif). At 30 the button is disabled and says Limit reached.

Photos are referenced, never copied

A frame points at the file where it is. Move or delete the file and the frame has nothing to show.

Stickers: the tile reads {n} stickers or None, up to 30. The drawer has the same row list (freeze, remove), Add a sticker… (png, webp, svg, gif), then two libraries, only one open at a time:

  • Built-in library: the Noto Animated Emoji catalogue. The app fetches it through its main process and needs the network; when it cannot reach it, the drawer says Library unreachable — check your connection. A search field (Search — e.g. fire, heart, party…, matching English tags) filters the grid, 24 per page with Show more; No result when nothing matches. Clicking a cell downloads the GIF to your disk and pins it (cells are disabled at the cap of 30); a failed download says Download failed. The credit line reads Noto Animated Emoji — Google, CC BY 4.0.
  • My folders: declare up to 4 folders of your own; the app reads each one, subfolders included. Empty state: No folder declared. Point at one and every compatible image inside it — subfolders included — becomes a library. Each folder row shows its name and a status ({n} images, Reading…, or Unreadable — moved, or the drive is gone) and an × (Undeclare this folder) that removes the library, not the stickers already pinned from it. Buttons: Declare a folder… (disabled with Limit reached at 4) and Rescan. Declaring a folder twice says Folder already declared; a very large folder says Large folder — the first {n} images are listed. A filter field (Filter by name or subfolder…) narrows the grid, which is grouped by subfolder, 36 per page with Show more; an empty folder says No compatible image in this folder. Clicking a cell pins the file by its path, without copying it.

Light mode (performance)

Disables non-essential visual effects (frosted-glass blur, animated backgrounds) to free GPU and memory. Recommended on integrated graphics or low-RAM machines.

One switch, Reduce visual effects. On, it removes the frosted-glass blur from every widget and panel, freezes the decorative background animations, and drops the heavy background layers, keeping only the static grid.

On first run the app probes your hardware and turns it on by itself when it finds roughly 8.6 GB of RAM or less, or no dedicated graphics card. It then shows Enabled automatically — your hardware looks resource-limited. You can turn it off anytime. Once auto-enabled it is remembered as your choice, so it never fights a manual override.

Graphics Processor (GPU)

Select the preferred graphics processor for rendering (such as the neural graph).

A dropdown with three options: System Default (default), High Performance (Dedicated GPU), Power Saving (Integrated GPU). The choice is saved in your profile.

Restart required

Any change shows GPU configuration changes will take effect after restarting the application. and a confirmation box (title Graphics Processor (GPU), single OK button shown in English) that repeats it: GPU Configuration Saved! This change to the high-performance GPU will take effect at the next application startup. (or …the power-saving GPU…).

Choosing High Performance (Dedicated GPU) on a machine where no dedicated card is detected opens a warning instead: Warning: No dedicated GPU (GPU 1) was detected in your system. High Performance mode will be configured, but requires compatible physical dedicated GPU hardware to take effect. Changes will apply after a complete restart of the application. A red banner then stays on the page, Dedicated GPU not detected (GPU 1 missing). Click for details., with a Details link. The mode is still saved; it simply has no card to run on.

The ⟳ Reset all action below leaves GPU mode untouched. Whisper and the local voice engines have their own GPU story, described under Voice.

Reset appearance

Restore every appearance setting to its factory default.

The red button ⟳ Reset all opens a confirmation (title Reset appearance): Reset all appearance settings to their factory defaults? This restores the theme, icon pack, background and widget windows. Your language and GPU mode are left unchanged. with Cancel and ⟳ Reset all.

What it resets: the theme back to Dark Void, the icon pack to Geometric, the background to the Grid layer alone with default options (custom image and animated file cleared), the canvas back to locked (the view recenters and stray widgets are pulled back on screen), and the widget-window colours for the current theme.

What it does not reset

Language, GPU mode, light mode, the menu bar side, Fit windows to the screen, Big icon when zoomed out, every ornament, and your keyboard shortcuts.