Years of mail, on your own disk.

macOS 12 or later · Apple silicon

Ten years of mail, searched in 5 ms.

Exchange, Microsoft 365 and IMAP in one window, every message kept on your own disk: import the PSTs nothing else opens, flag what needs an answer, translate what you can't read. No service of ours in the middle.

MailCode on the Mac App Store

Free 14-day trial, then a one-time purchase · No subscription

Windows — coming soon

A Windows build exists and is in testing. It ships once the installer is code-signed — an unsigned one makes Windows warn every person who runs it, and that is not how this should arrive.

* Median of the nine queries below, on a 280,901-message archive. Apple M4 Max, 48 GB, warm page cache. Slowest of them 33 ms; a broader term, a cold cache or a spinning disk is slower. See for yourself ↓

What makes it different

Long-term storage, and capacity you control

Keep large archives open and organised while watching what the server still holds — and move messages onto local or external storage when it fills up, attachment bytes fetched before anything is removed.

Search that goes further than a search box

Prefixes, compound queries and clickable filters, plus plain questions: “Find phone number of Alice Chen” runs the ordinary search and reads the answer out of the mail it found. Locally, in English or Turkish, with no AI and nothing sent anywhere.

Mail you can act on, not just read

Turn a message into a flag, a reminder, a due date, a note or a meeting, and follow it in a view built for that — so the thing that matters this week is not buried under the thing that arrived this morning.

Translation and AI where the work happens

Compose, translate, summarise and refine in place, with translated text and saved results kept for later. Off by default, and nothing leaves the machine until you ask it to.

A view for the way you actually work

The same mail as a list, an urgency matrix, a conversation on a time axis, a Gantt-style timeline, or a filtered tab of its own — none of which move a single message.

Import what you already have

PST and OST files, .eml, .msg and maildir. The folder tree comes across as it stands and every message is indexed on the way in.

A closer look

Tokens, not guesswork

f: for sender, s: for subject, b: for body, a: for attachment name, to: and cc:, in: for a folder, df:/dt: for a date range, label: and flag: for the sidebar filters. Terms combine with AND by default, or with OR — and a plain question like “Find phone number of Alice Chen” runs the same search and reads the answer out of what it finds.

Search
The message list, conversation outline and reading pane. Dark and light are both first-class.

The message list, conversation outline and reading pane. Dark and light are both first-class.

Measured on a real archive, not a demo one

QueryMatchesOne accountAll Mail · 4 accounts
demurrage 92 0.1 ms 0.1 ms
invoice payment 2,640 2.0 ms 3.0 ms
invoice 4,581 2.4 ms 4.0 ms
"purchase order" 2,411 3.2 ms 4.0 ms
cable spec revision 529 4.5 ms 4.8 ms
b:delivery 17,133 8.7 ms 15.8 ms
s:report 21,668 10.0 ms 19.4 ms
f:support 1,388 1.3 ms 1.7 ms
contract 36,866 13.9 ms 32.8 ms

280,901 messages in a 31 GB archive, 1,208,950 attachments, four accounts. Apple M4 Max, 48 GB, macOS 26.7; median of seven runs with the page cache warm, which is the state a second search is in and not the first one after a boot. The result list is capped at 5,000 rows — that cap, not the index, is why a query matching 36,866 messages costs five times one matching 92 rather than four hundred times. Take your own numbers with scripts/search-bench.js.

Every feature

Storage, archiving and capacity

  • Long-term storage for large archives.
  • Watch server capacity so a growing mailbox stays under control.
  • Move messages onto local storage or an external drive.
  • Choose the sync window and when attachments are downloaded.
  • Import PST files; export or save mail as .eml.
  • Find and remove duplicate messages to keep an archive clean.

Search and discovery

  • Fast search across everything stored.
  • Prefix tokens for compound queries.
  • Clickable key areas for quick filtering.
  • Ask a plain question and get the answer read out of the mail — locally, no AI.
  • Narrow by subject, sender, label, flag or folder.
  • Contacts collected from mail as it arrives, building the address list for you.

Productivity, tasks and follow-up

  • Flags, due dates and reminders on any message.
  • Flagged work as a matrix, a list or a Gantt-style timeline.
  • Notes made from messages, and notes turned into tasks.
  • Move a flag within a conversation; reschedules show on the flagged item.
  • Reminders attached to a message you are composing.
  • Auto-reply and rules for the routine work.

Message views and navigation

  • Switch views and apply one-click filters to the mail that matters.
  • Multiple tabs across accounts, searches, folders and tasks, each keeping its own context.
  • A timeline of the conversation, with its branches, inside the reading pane.
  • A sentence-based message view for easier reading.
  • Smooth scrolling and a collapsed explorer for large mailboxes.
  • Counts, sync progress, import, delete and move activity and server capacity, all in the status bar.

Accounts, labels and organisation

  • Several accounts, added and managed together.
  • Multiple labels per message, with sublabels one level deep.
  • Move mail between folders, locally or on the server.
  • Flag indicators and row tinting to spot what matters at a glance.

Calendar and meetings

  • Calendars for Exchange, IMAP and Microsoft 365 accounts.
  • Meetings created straight from an email.
  • Meeting links made to suit how the meeting is being scheduled.

AI, translation and assistance

  • AI results saved for later use.
  • AI tools for writing, searching, translating and the everyday work.
  • Compose an email with AI.
  • Translate a message inline, in part or in whole, and keep the translation.
  • Translate a previewed XLSX, DOCX or PDF and download the translated file.

Attachments and file handling

  • Links made automatically for large attachments via ownCloud, OneDrive, iCloud Drive or your own S3 storage.
  • Import, export, save and convert between mail formats.

Composing and sending

  • Scheduled send that goes out even with the application closed.
  • Several signatures, chosen by the language you are writing in.
  • Quoting that carries the sender's initials, so a thread stays legible.
  • Spell checking as you write, including Turkish morphology.

Customisation, appearance and diagnostics

  • Several appearance options for the interface.
  • Keyboard shortcuts you define yourself.
  • Diagnostic logging for when something needs chasing down.

Specifications

Engine SQLite in WAL mode, FTS5 full-text index
Accounts Exchange EWS, Microsoft 365 / Graph, IMAP and SMTP, CalDAV calendars
Imports PST and OST, .eml, .msg, maildir — folder tree preserved
Measured at 280,901 messages and 1.2M attachments in one archive
Network use Your own mail server, and nothing else. No analytics, no account with us.
Requirements macOS 12 or later

Point it at the folder you have been avoiding

The PST from the project that closed, or the mailbox your mail client stopped opening.

MailCode on the Mac App Store

macOS 12 or later · free 14-day trial, then a one-time purchase

Windows — coming soon

A Windows build exists and is in testing. It ships once the installer is code-signed — an unsigned one makes Windows warn every person who runs it, and that is not how this should arrive.

© 2026 MailCode. Made in Ankara. ReleasesSupportPrivacyContact