Importing Files¶
Melanite imports files by copying them into the library folder (the same approach as Eagle). After importing, moving or deleting the original file has no effect.
Ways to import¶
Drag & drop¶
Drop files anywhere on the window. Multiple files at once are fine. Release when the drop overlay appears.
Import a whole folder¶
You can drop folders too. The files inside are imported recursively, and the folder names along the way become tags.
For example, dropping a folder "Photos" that contains Photos/2024/Okinawa/sea.jpg
gives sea.jpg three tags: "Photos", "2024" and "Okinawa".
- Hidden files and folders (
.DS_Store,.git, …) and shortcuts (symlinks) are skipped -
Choose how tags are applied under Settings → "Import" tab → "When importing a folder"
Choice Tags in the example above Tag with every folder level (default) Photos, 2024, Okinawa Tag with the innermost folder only Okinawa Do not add tags (none) -
To pick a folder from a dialog, use "Import folder…" in the command palette (Cmd+Shift+P / Ctrl+Shift+P)
No folders are created inside the library
Melanite has no folder hierarchy. Turning folder names into tags is a one-way conversion at import time — the way in for everything you have organised in folders so far. Once imported, those items behave exactly like any other tagged item.
File dialog¶
Use the "Import…" button shown in the Inspector when nothing is selected.
Create a new note¶
Cmd+N / Ctrl+N asks for a name, creates the Markdown note, and puts you straight into the editor. → Writing Notes
Paste from the clipboard¶
With the list showing, press Cmd+V / Ctrl+V to import the clipboard contents.
| Clipboard contents | Result |
|---|---|
| An image | Imported as Pasted <date-time>.png |
| A URL string | Downloaded and imported (up to 100 MB) |
The file name is taken from the end of the URL, or from the Content-Type if that fails.
Note
When a text field or the editor has focus, this acts as a normal paste.
What happens on import¶
Automatic tagging¶
Importing while filtering by tags applies those tags automatically. Drop a document while filtered to "Client A" and it comes in tagged "Client A".
The toast after importing¶
Right after importing, a toast appears: "Imported n items [Add tags]". Pressing "Add tags" opens a bulk-tagging dialog for the imported items.
Duplicate detection¶
If a file's content hash (BLAKE3) matches an existing item, the file is skipped automatically (not imported).
The toast reports it as "Imported n, skipped m (same content…)".
The check is by content: a file with a different name but identical content is skipped, while files with the same name but different content are both imported.
You can't deliberately keep two copies of identical content
There is no UI to choose between skipping and duplicating. One copy of any given content per library is the rule.
If duplicates already got in (for example when migrating from another library), the integrity check can find and clean them up → Libraries
Thumbnail generation¶
Thumbnails are generated in the background after importing. Right after a large import, they fill in progressively.
Regenerating thumbnails¶
Select the items, right-click → "Regenerate Thumbnails" (works on a multi-selection, and is also available from the command palette).
It rebuilds thumbnails that already exist and ones that previously failed to generate. Use it when:
- You edited the underlying file in another app and it now looks different
- Generation failed before (e.g. after replacing a password-protected PDF with an unlocked one)
Generation runs in the background as usual; progress and completion appear at the right of the toolbar. If your selection contains no kinds that support thumbnails (documents, other files), you get a notice saying so.
How this differs from the integrity check
The integrity check only generates thumbnails that are missing. Ones that failed before are not retried automatically — retrying them repeatedly would just burn time. The report tells you how many were skipped; use "Regenerate Thumbnails" when you want to retry them.
Image EXIF¶
When importing images, the following is read from EXIF:
- GPS data → saved automatically as the item's location (Location & Map)
- Orientation → thumbnails are rendered upright (the file itself is untouched)
- Capture time (DateTimeOriginal) → optionally applied to the file dates (below)
Dates at import time¶
Each item has three dates.
| Date | Default source |
|---|---|
| Created | The original file's creation time (btime) |
| Modified | The original file's modification time (mtime) |
| Added | When it was imported into Melanite |
When an image has an EXIF capture time, you can choose whether to overwrite the created / modified dates with it in Settings → "Import" tab (both default to OFF).
Turned ON, photos line up on the calendar by the day they were taken, and modified-date ordering becomes shooting order. Useful when mtime is meaningless, such as with scanned photos.
Photos imported with the setting OFF can still be updated later — see "Applying the date taken afterwards" below.
Supported file kinds¶
Any extension can be imported. Behavior differs by kind.
| Kind | Example extensions | What you get |
|---|---|---|
| Note | .md |
In-app editing, full-text search of the body, text preview on the card |
| Text | .txt etc. |
In-app editing (no preview), text on the card. Body not searchable |
| Image | .png .jpg .gif .webp .svg .avif etc. |
Thumbnails, in-app preview at full size |
| Video | .mp4 .mov .m4v .avi .mkv .webm |
Frame thumbnail on macOS, in-app playback |
| Audio | .mp3 .m4a .wav .flac .aac .ogg .opus .aiff |
Embedded artwork as the thumbnail on macOS, in-app playback |
.pdf |
First-page thumbnail, the real PDF shown in-app (Space), opens in external app | |
| Document | .docx .xlsx .pptx etc. |
Icon display, opens in external app |
| Other | anything | Icon display, opens in external app |
About video and audio playback
Playback in Quick Preview (Space) is limited to codecs the OS WebView supports. If a file won't play, open it in an external app (which is also the default action).
Audio has its own "Audio" kind in the sidebar. On macOS, files with embedded artwork use that artwork as their thumbnail, and it is shown in Quick Preview as well.
Watched folders (automatic import)¶
Files placed into folders you register under Settings → "Import" tab → "Add Folder…" are imported automatically. A watched folder works as an inbox: drop a file in and it is imported within a few seconds, then deleted from the folder.
- Everything in the folder is a candidate — Melanite keeps no record of what it already imported
- Subfolders are imported too. Their names become tags under the same rule as drag & drop, and subfolders left empty are cleaned up (the watched folder's own name never becomes a tag)
- Each folder can carry tags to apply, comma separated (e.g.
screenshots, work) - A file being copied in is imported only after the writing stops (never a half-written file)
- Hidden files (
.DS_Storeetc.) and partial downloads are ignored - Files that could not be imported stay in the folder (for example when the same content is already in the library). A toast reports how many, so you can check them and clean up by hand
- If a watched folder cannot be opened (an external drive is not connected, the folder was deleted), Melanite only reports "Can't open the watched folder" and does nothing else — the other watched folders keep importing. Importing resumes on its own once the folder is back
The originals do not stay
Successfully imported files are removed from the watched folder (the data itself lives in the library). If you want to keep the originals where they are, import by drag & drop instead of using a watched folder.
This setting is per computer
Watched folders are stored in that computer's app settings, not inside the library, because folder paths differ from machine to machine. Even if you use one library from several computers through cloud sync, the setting is not shared: automatic import does nothing on a computer where you have not registered a folder. Register one on each computer where you want it.
Also, avoid watching the same cloud-synced folder (Dropbox and the like) from more than one computer. Whichever computer imports first deletes the file, and that deletion propagates to the others, which makes the behaviour hard to follow. Point watched folders at local folders on that machine — your screenshot folder, for instance.
Good uses
Register your screenshot folder or the browser's download folder: things land in the library just by being saved, and the folder stays tidy.
After importing¶
Rename¶
Edit the file name in the Inspector. The actual file is renamed too (the extension cannot be changed).
Press F2 to move focus to the file name field with the name selected, so you can type over it and press Enter to commit (→ Keyboard Shortcuts).
Bulk rename¶
Select several items and right-click → "Rename N Items…", or press F2 (with several items selected it opens bulk rename).
| Field | What it does |
|---|---|
| Find / Replace with | Replaces text inside the display name (e.g. IMG_ → empty) |
| Prefix / Suffix | Adds text before or after the name |
| Sequential numbers | Numbers the items in list order (start, digits, position) |
A preview shows exactly what will change before you apply it. The actual files are renamed too (extensions stay). Cmd+Z / Ctrl+Z undoes it.
Delete (two stages)¶
- Del or Cmd+Backspace moves the item to the Trash (the Sidebar's "Trash")
- Open the Trash and "Delete Forever" removes it along with the actual file
Links are kept while an item is in the Trash. Deleting forever removes its links too.
Open in an external app¶
- Enter — notes open in the editor; everything else opens in an external app
- The "Open in External App" button in the Inspector
- Pick an app from the right-click menu
Per-extension defaults (built-in editor / OS default / a specific app) are configured in Settings → "Opening Files" tab.
Multiple items can be opened at once. The right-click menu offers "Open N Items" (each with its own default) and "Open N Items With…" (all of them in one app you pick).
- One app window is launched per file, so opening more than 10 asks for confirmation
- Files set to open in the built-in editor: only the first one opens, since the editor shows one note at a time (a notice tells you how many were left out)
Reveal in Finder / File Explorer¶
The "Reveal" button in the Inspector, or the right-click menu, opens the actual file's location.
Applying the date taken afterwards¶
Even for photos imported while the setting was OFF, you can apply the EXIF capture time to the item's dates later.
- Select the images (multi-select applies to all of them at once)
-
Right-click → "Set Created Date from EXIF" or "Set Modified Date from EXIF"
-
Only images are affected. The entries don't appear unless the selection contains images
- Images without a capture time (DateTimeOriginal) are skipped, and the count is reported in the toast
- Applying to the modified date also sets the actual file's modification time to match (same as at import time — otherwise the next scan would revert it)
- Cmd+Z / Ctrl+Z restores the previous dates
Created or modified?
Both the calendar view and the sort order can use either date, so pick whichever one you normally browse by. To fill in both, run the menu twice.
Share (macOS only)¶
Right-click → "Share…" opens the macOS share sheet at the cursor. It lists the usual destinations — attach to a new mail message, send in Messages, hand over via AirDrop, pass to a Shortcut (the list itself is managed in System Settings → Sharing extensions).
- Multi-select shares all of them at once
- What gets handed over is the actual file, not a link, so it arrives as a real attachment
- Everything after picking a destination happens in macOS; nothing is recorded in Melanite
Not available on Windows
Windows' share UI targets Store apps and is of little use for attaching a file to a desktop mail client. On Windows, export the file first and attach it from there.
Export¶
The right-click menu lets you copy files out of the library.
| Menu | Result |
|---|---|
| Export… | Copies the files as-is into a folder you pick |
| Export as ZIP… | Packs the selected items into a single ZIP archive |
"Export as ZIP…" asks for a file name and location (the default is
melanite-export <date>.zip). Handy when you need to attach several files to one mail, or
hand a batch of files to someone.
- If two files share a name inside the archive, the later one becomes "name (2).ext"
- Tags, memos and links are not included — only the files themselves. To move items with their metadata, use "Move to Another Library" instead
- Formats that are already compressed (photos, video, Office files) are stored without compression, because squeezing them again costs time and saves nothing. A ZIP that is about the same size as the originals is expected
Move to another library¶
If you keep several libraries and something ended up in the wrong one, you can move items across with their metadata.
- Select the items to move (multiple selection works)
- Right-click → "Move to Another Library…" (also available from the command palette)
- Pick the destination
.melanitefolder and confirm
What moves along with them:
- Tags (matched by name; a tag that doesn't exist in the destination is created, and its group and colour come along too)
- Memos, locations, favorites, created / modified dates, thumbnails
Things to watch for:
- Links pointing at items that stay behind are lost. Select the linked items together if you want to keep those links
- Items whose content is already in the destination are not moved (you are told how many)
- Items in the trash cannot be moved
Reversible if you get it wrong
The originals are not deleted permanently — they go to this library's trash. If it was a mistake, restore them here and delete the copies in the destination.
Close the destination library first
If the destination is open in another window or on another machine, the move fails — that is the same safeguard that keeps two processes from touching one library at once.