Skip to content

Settings

Open from "⚙ Settings…" at the bottom of the Sidebar. There are ten tabs.

Most settings are per-device

These settings are generally stored on the device, not in the library (think browser localStorage). They do not travel when you copy the library folder to another machine — a trade-off to keep libraries portable.

The Backup tab is the exception. Backups are written into that library's backups/, so the settings live with the library and travel with the folder.

Appearance

Theme

Option Behavior
Follow OS Follows the OS light / dark setting (default)
Light Always light
Dark Always dark

Language

Switches the UI language.

Option Behavior
Follow system Follows the device language (Japanese → Japanese, anything else → English) (default)
日本語 Always Japanese
English Always English
  • Switching applies immediately, without a restart, across the whole UI
  • The macOS menu bar switches language as well

File dialogs follow the device language

Dialogs such as "choose an export destination" or "pick files to import", and the confirmation sheets, are drawn by the OS, so they follow the device language setting. Choosing "English" here does not switch them on a Japanese device (and vice versa). The confirm button's wording ("Export", "Import", …) does follow the app's language.

Note

Some error messages generated deep inside the app may still appear in Japanese for now.

File names in lists

Tick "Show file extensions" and names in lists change from meeting notes to meeting notes.md (off by default).

It applies to four views: grid, list, calendar, and map.

View Extensions off Extensions on
Grid trip photo trip photo.jpg
List trip photo trip photo.jpg
Calendar / Map trip photo trip photo.jpg

Quick Open and link suggestions always show extensions

Quick Open (Cmd+P) and the Inspector's "Links" field show the extension regardless of this setting. There is no thumbnail and no kind column there — the name is all you have, so you need to tell a .md and a .pdf of the same name apart.

  • The change applies right away
  • This setting is stored per device and never travels with the library
  • Only the display changes; the file on disk is untouched (renaming in the Inspector never changes the extension either)

Tick "Show 2-hop links" and the Inspector lists, below the backlinks section, the items connected to the items you link with, grouped by the item they connect through (off by default). See Linking Items → 2-hop links for how they look and what you can do with them.

  • The change applies right away
  • This setting is stored per device and never travels with the library
  • While it is off, 2-hop links are not looked up at all

Calendar

Controls how the calendar view looks.

Week starts on

Choice Behaviour
Sunday The leftmost column is Sunday (default)
Monday The leftmost column is Monday; Sunday moves to the right edge
  • The weekday headings and the position of the 1st shift together
  • Up / Down still move by exactly 7 days, whichever start you pick

Tint Sunday and Saturday cells

Tick this and calendar cells are tinted: Sunday in pale pink, Saturday in pale blue (off by default).

  • The colours are chosen to keep text readable in both the light and dark themes
  • Hover and the keyboard focus outline still take precedence over the tint
  • The weekday headings (Sun / Sat) keep their coloured text regardless of this setting

Fonts

You can pick the font for the interface and for the note editor separately.

Field Where it applies Default
Interface The whole app — sidebar, grid, inspector, dialogs The OS system font
Note editor The body text of the note editor A monospace font
  • The list holds the fonts installed on this device — the app asks the OS for them, so there is no font name to type
  • Your choice applies right away — check the sample just below
  • Pick "Default (…)" at the top to go back

Text never breaks

The default font always stays behind the one you choose, so characters your font lacks — Japanese in a Latin-only font, for instance — still render with the default.

Font settings are stored per device

Fonts are not written into the library; they are saved on that device only. Windows and macOS ship different fonts, so sharing a library never carries a font choice from one machine to the other — pick whatever you like on each device.

If a font later disappears from the device, the setting shows as "(not found on this device)" and text falls back to the default until you pick another.

Preview text size

Choose the body text size used when you open a note — or a text file (.txt and the like) — in the preview (Space, or Cmd/Ctrl+E while editing).

Step Notes Text files
Small 13px 12px
Medium (default) 14px 13px
Large 16px 15px
Extra large 18px 17px
  • Headings, code, tables, and list spacing scale with it, keeping the same proportions
  • Your choice applies right away — check the sample just below
  • Text files are shown in a monospace font, which looks larger at the same size, so they sit 1px below notes
  • Only the preview changes. The note editor keeps its own text size (its font is the "Fonts" setting above)

This setting is stored per device too

Like the theme and the fonts, it is never written into the library, so you can keep a different size on a large screen and on a small one.

Import

When importing a folder

Dropping a folder imports the files inside it recursively. This setting decides whether the folder names along the way are applied as tags.

Choice Tags on Photos/2024/Okinawa/sea.jpg
Tag with every folder level (default) Photos, 2024, Okinawa
Tag with the innermost folder only Okinawa
Do not add tags (none)

The same setting applies to subfolders inside watched folders. See Importing Files for details.

Dates on import

When an image has an EXIF capture time, choose whether to overwrite the file's dates with it. When off, the original file's modified (mtime) / created (btime) times are used as-is.

Setting Default Effect
Use the capture time as the modified date Off Modified-date ordering and the calendar (modified basis) follow shooting dates
Use the capture time as the created date Off The calendar on the created basis follows shooting dates

Turn these on when importing batches of photos. The "Updates" chart in Statistics also becomes shooting-month based.

Note

EXIF rotation (Orientation) is always honored to keep thumbnails upright, regardless of this setting. The actual file is never modified.

This setting only applies at import time

For photos already in the library, select the images and right-click → "Set Created / Modified Date from EXIF" (Importing).

Watched folders

Files placed into the folders you register are imported automatically and then deleted from the folder — a watched folder is an inbox, not a mirror.

  1. Pick a folder with "Add Folder…"
  2. Optionally type tags to apply, comma separated, in that row's field
  3. The "×" on the right stops watching

Drop a file in and it is imported within a few seconds.

This setting is per computer

Watched folders are stored in that computer's app settings, not inside the library. Register them on each computer where you use the same library.

See Importing Files for details.

Notes

Templates

Sets the tag name that marks a note as a template (default template). Notes with that tag are listed by Cmd+Shift+N / Ctrl+Shift+N.

Today's note

Sets the name format of the note opened by Cmd+Shift+D / Ctrl+Shift+D, and the template used when it has to be created.

Format Example
YYYY-MM-DD 2026-07-25 (default)
YYYY/MM/DD (ddd) 2026/07/25 (Sat)

Available tokens: YYYY YY MMM MM DD ddd HH mm. See Writing Notes for details.

Slides

How notes look when you show them as slides. The settings apply to every slide; they cannot differ per note.

Setting What it does
Header Text shown at the top left of every slide. Nothing is shown when empty
Footer Text shown at the bottom left of every slide. Nothing is shown when empty
Background color The slide background (white by default)
Text color Color of headings, body text, header and footer (near-black by default)
Show page numbers Shows "3 / 10" at the bottom right (on by default)
  • The sample below the settings updates as you change the colors, header and footer
  • When the two colors are too close to read comfortably, a red message tells you (contrast below 4.5:1 — you can still use them)
  • Table borders and code backgrounds are derived from the two colors. With a dark background, code coloring and Mermaid diagrams switch to their dark palettes
  • The header and footer are shown exactly as typed (Markdown is not applied)
  • "Reset to defaults" restores all five settings
  • These settings are saved per device and are not stored in the library

Shortcuts

Reassign the shortcuts that only work while a note is open. The defaults are below (on Windows read Ctrl for Cmd).

Action Default
Insert a template Cmd+Alt+T
Toggle checklist Cmd+Enter
Go to the previous day's note Cmd+Alt+Left
Go to the next day's note Cmd+Alt+Right
Bold the selection Cmd+B
Italicize the selection Cmd+I
Insert a link Cmd+K
Open the full preview Cmd+E
Show as slides Cmd+Alt+P
Open the outline (heading list) Cmd+Alt+O
Select the next occurrence (multiple cursors) Cmd+D
Select every occurrence (multiple cursors) Cmd+Shift+L
Add a cursor above Cmd+Alt+Up
Add a cursor below Cmd+Alt+Down

To change one: click the field — it switches to "Press a key…" — then press the keys you want. Esc cancels, × clears the assignment, and "Restore defaults" resets all of them.

Which combinations are allowed

  • Only combinations with a modifier (Cmd / Ctrl / Alt) can be assigned; unmodified keys are needed for typing
  • A key already used by another action is refused (the conflicting action is named). Clear that one first
  • On macOS, Alt + a letter (without Cmd) can't be assigned, because macOS turns that into typed text (Alt+T → †). Add Cmd, as in Cmd+Alt+T

What each action does: Writing Notes and Multiple cursors.

Moving lines and friends are not listed here

Moving lines (Alt+Up / Alt+Down), duplicating and deleting them come from CodeMirror's default keymap, which the editor is built on. They work out of the box but cannot be changed on this screen → CodeMirror's default keymap

Opening Files

Configure which app "Open" uses, per extension. Extensions without a rule open with the OS default.

Three choices per extension:

Option Description
Built-in editor Edit inside Melanite. For text formats (.md, .txt, …)
OS default Open with the OS default app
App: Open with the app you chose

Only some extensions can use the built-in editor

Only extensions handled as text (.md, .txt, .csv, .json, .html, .rs, .py, …). Press "Built-in editor" on any other extension and the reason appears right under that row, leaving the rule unchanged — assigning it would only produce a rule that fails with "cannot be opened as text" the moment you open the file.

Adding a rule

Type an extension (e.g. txt) into the field at the bottom, press "Add", and pick the behavior. Remove a rule with the "×" on its row.

Examples

  • Open .psd in Photoshop
  • Open .xlsx with the OS default (Excel)
  • Peek into .log files with the built-in editor

Privacy

What Melanite sends — and what it never sends — is collected on the Privacy page. This section covers the setting itself.

Remote images and styles in previews

When a Markdown note references an external image — ![](https://…) — opening that note contacts the remote server every time. That server learns your IP address and when you opened the note. Melanite is built around staying local, so these are not loaded by default.

Setting Default Effect
Load remote images and styles Off Turn on to load http(s) images and style sheets in the preview

Blocked images are replaced by a "Remote image not loaded" placeholder. Turn this on if you only handle notes you wrote yourself and want to embed external images.

This covers more than Markdown's ![](…). If a note contains raw HTML, images, video, audio, <iframe>, SVG image references, background attributes and style="background-image:url(…)" are all blocked too — anything that reaches out to a remote server just by being displayed.

The same setting applies to the HTML file preview. While it is off, the page's external images, style sheets and web fonts are not loaded (it renders with its own text and layout only). Turning it on loads them, so those hosts learn your IP address and when you opened the file. Either way the page's JavaScript never runs and its forms cannot be submitted — only what is needed to look at it gets through.

Note

Images you imported into the library — including pasted ones — are not "remote images" and always display, regardless of this setting. Only images referenced by URL from note text are affected.

Backup

Keeps snapshots of the database (melanite.db) — which holds your tags, links and memos — in backups/ inside the library. Your files (files/) stay in their original format and are not included.

Setting Default Meaning
Generations to keep 5 Oldest generations are removed first. The one taken before an app update is kept regardless of this number
Automatic interval (days) 1 Taken when you open the library, if this many days have passed. Set to 0 to turn automatic backups off

"Back up now" creates a generation immediately. The current generations are listed below.

→ See Library for details

Metadata export

Below the backup settings, "Export as JSON…" writes the library's metadata into a single JSON file. You choose where to save it in the dialog.

What it contains:

What it does not contain:

  • The contents of your files (including note bodies). They stay in files/ in their original format, so each item simply carries a files/<ID>/<file name> path instead
  • Per-device settings (watched folders, UI language, view settings, …)

Items in the trash are included too (they carry trashedAt, and their path points into trash/).

There is no way to read it back in

You cannot import the JSON to restore a library. Restoring is what backups are for. This export is for inspecting what a library holds from outside the app, or for handing the metadata to another tool.

Portable pack

Settings for reading this library on a phone with Melanite Viewer, the read-only companion app.

Exporting a pack

This tab builds a portable pack — a folder named .melanitepack — for reading this library on a phone.

You pick where to keep it once. "Choose destination…" lets you pick a folder, and <library name>.melanitepack is created inside it. From then on, "Update" is all you press — the same place is rewritten.

Keeping it in iCloud Drive works well

Each update then syncs only what changed to your device.

A pack has two parts. The database and your note text are bundled into one file (content.zip); thumbnails sit loose beside it. Sync delivers files in no particular order, so without that bundle you could end up with notes listed but unopenable — whereas a thumbnail that hasn't arrived just shows as an icon, which is why those are left loose.

What goes in:

What stays out:

  • The files themselves — images, video, PDFs, Office documents. Including them would make the pack as large as the library and no longer portable
  • Items in the trash

After the first time, only what changed is rewritten

Unchanged thumbnails and notes are left alone. Anything you deleted in Melanite is removed from the pack on the next update — whether you moved it to the trash or deleted it for good. The "N files written" in the result is that count.

Because the pack is a folder rather than one archive, changing a single tag doesn't mean sending everything again. Only the first update writes the whole thing.

Where to keep the pack for Android

With the Android version of Viewer, put the pack in a folder on the device itself before importing it.

You can import straight from a cloud folder such as Google Drive, but then every thumbnail is fetched from the cloud as it is shown: lists fill in slowly, and thumbnails don't appear without a connection. The Android Google Drive app can't make a whole folder available offline, so marking files offline doesn't get around this.

If copying over a cable every time is a chore, use a sync app to mirror the cloud folder onto the device:

  1. On your computer, export the pack into Google Drive (the desktop app) or a similar folder
  2. On Android, install a sync app and set it to sync the <library name>.melanitepack folder in Drive one way into a folder on the device (for example Documents/Melanite/). Have it sync deletions too, so thumbnails of items you deleted on your computer don't linger
  3. In Viewer, choose "Import a pack…" and pick the folder on the device

Sync apps include FolderSync, which works with Drive, Dropbox, OneDrive and more, and Autosync for Google Drive. Free versions may cap the size of files they sync; the file that bundles the database and notes (content.zip) can reach tens of MB, so check that limit.

Once this is set up, Viewer tells you "A newer version is available" when sync brings in an updated pack, and one tap re-imports it. If you import while a sync is still running, a pack that hasn't fully arrived simply fails to import — you never see half of it. Try again a little later.

The sync app is your choice

A sync app can read your cloud folder. Viewer and Melanite make no additional connections, but how the sync app treats your data is up to that app.

Automatic updates

Set "Update automatically every (days)" to 1 or more and opening the library updates the pack in the background, if that many days have passed. The default is 0 — never.

Don't set a short interval

Each update rewrites the bundle of database and notes in full (around 27 MB for a library of 100,000 items). It cannot be made incremental — changing a single tag changes the database. That is why there is no "update on every change".

Why it is off by default

The pack lives outside your library, usually in a cloud-synced folder. Writing tens of megabytes there without you asking would be a surprise, so you opt in.

The first export can take a while

How long it takes depends on the number of thumbnails and how fast the destination is. The progress is shown while it runs, so if it looks stuck, check whether the count is still climbing. You can "Stop" at any point — the pack you exported before is left untouched. Turning "Include thumbnails" off makes it much smaller and faster.

The export keeps running if you close the Settings window; reopen it to see where it got to.

The app never sends it anywhere

Hand the pack to your own device however you like — AirDrop, iCloud Drive, a cable. Melanite does not send it anywhere, and this feature adds no new network access (see Privacy).

A pack is not a library

Melanite cannot open a pack folder: without the files themselves it is an incomplete library. For backups and moving house, use backups and a copy of the library folder.

A folder that already has something in it cannot be used as a destination (so that nothing of yours gets cleaned up). Pick an empty folder, or a pack you exported before.

Maintenance

Integrity check

Detects mismatches between the database and the actual files, generates missing thumbnails, and rebuilds the search index. (To rebuild thumbnails that already exist or failed before, see Regenerating thumbnails.)

Press "Run Integrity Check…" to see the report.

→ Details: Libraries

Library info

Shows the currently open library's name and location (full path). Check here to see which folder to copy when making a backup.

Licenses

Shows the Melanite version and every piece of open source software it is built with. Select a package name to read its full license text in place. The filter box matches license names (MIT, MPL-2.0, …) as well as package names.

→ Details: Licenses