Privacy.

Imark reads files on your Mac and renders them there. The app has no account, analytics, or server of ours for anything to reach. This page explains the app’s update requests, the cookieless measurement the website always runs, and the analytics you can choose to allow.

Updated

Updates, and how to stop automatic checks

Once a day at most, Imark asks GitHub for a signed update list attached to the latest release. Sparkle verifies the list before Imark trusts it. No document, account, unique identifier, or system profile is sent. GitHub receives the normal details of a web request, including your IP address and a User-Agent that contains the Imark and Sparkle versions.

Finding an update does not download it. The disk image is downloaded from the same GitHub release only when you choose Install and Relaunch. It is signed by Imark, signed with a Developer ID, and notarised by Apple; Sparkle verifies the update before replacing the app and opening it again.

To stop automatic checks, choose Imark > Settings and turn off “Check for updates automatically” under General. Imark > Check for Updates still makes a manual check when you choose it. No disk image downloads unless you then choose Install and Relaunch.

What Imark never sends

There is no analytics, no crash reporting, no usage tracking, no account, and no licence check. Your documents are never uploaded — not to render them, not to build the outline, not to search them, not to translate them.

Imark collects no personal data, which means there is no profile to see, correct, export, or delete. Nothing about you exists to ask for.

You do not have to take that on trust. Imark is open source under the MIT licence, and the whole app is one Swift package you can search.

The documents you open

Imark reads the file you open, the other Markdown files in its folder so it can list them in the sidebar, any file a [[wiki-link]] points at, and the images the document refers to. That is the whole of it.

Rendering happens in a web view that cannot reach the network. Imark serves the page over a private imark:// scheme, under a content security policy of default-src ‘none’, so a document carrying a remote image, a tracking pixel, or an external script loads none of them. The fonts for maths are inside the app. A confidential document renders the same way with Wi-Fi off.

The Quick Look extension runs in Apple’s sandbox with read-only access to the file you previewed, and renders it with the same engine.

What Imark writes, and where

Everything stays on your Mac. Nothing here is sent anywhere.

WhereWhat, and when
The .md file you are readingOnly when you save an edit or comment. Editing writes the text you see after you click the pencil. A comment becomes an HTML comment inside the document, signed with the name in Settings and the time. Before saving, Imark checks that the file has not changed on disk and refuses the save if it has. ⌘Z and ⇧⌘Z undo and redo your typing.
~/Library/Preferences/pt.miguelsilva.imark.plistYour settings: theme, text size, column width, the name your notes are signed with, your search engine, and whether Imark checks for updates automatically.
~/.imark/pendingOnly while a coding agent waits for a review: which document it asked about, and what you decided. Deleted once the agent reads it.
~/.claude/skills, ~/.claude/commands, ~/.codex/skillsOnly if you accept the offer to set up the coding agents on your Mac. The alert names every file before Imark writes one, and a later version rewrites only the copies you left untouched.
The macOS recent documents listThe last files you opened, in the standard list every Mac app uses for File > Open Recent.

Your notes are signed with your macOS account name until you change it in Settings > Comments > Sign notes as. That name goes into the document, so whoever you send the file to can read it.

Three things only you can start

Search the web for a selection opens your browser at the search engine set in Settings — Google, unless you choose DuckDuckGo, Bing, or Kagi — with the selected text in the address. That text leaves your Mac, and it goes where you sent it.

A link in a document opens in your default browser, the same as a link anywhere else.

Translate a selection uses the translation built into macOS, and only with language packs already installed on your Mac. Imark asks for an installed pair, so nothing downloads and nothing is sent; if the pair is missing, Imark says so and stops. This one needs macOS 26 or later.

This site

imarkmd.com asks before loading Google Analytics. If you decline or do not choose, no Google tag loads and no analytics data is sent. If you allow it, Google Analytics records the page, referring site, browser and device category, approximate location such as country, and clicks that download Imark. We use this only to understand which pages help people find and download the app. We do not use it for advertising or remarketing.

When allowed, Google Analytics sets _ga and _ga_GTMPYD4VB9 cookies for up to two years to distinguish browsers and sessions. Your choice is kept in this browser’s local storage so we do not ask on every page. You can decline without losing any site feature, clear the site’s browser data at any time, or .

Whatever you choose, the site uses Vercel Web Analytics and Speed Insights: they set no cookie and carry no personal identifier, and they give us aggregated page views and performance timings, processed by Vercel.

No fonts or images come from another server. The version number and download size are copied from the published GitHub release into this site’s repository. Your browser makes no request to GitHub until you download the app. Google’s own privacy policy explains how Google handles the optional analytics data.

The site is hosted on Vercel, and the download itself comes from GitHub. Both keep the ordinary logs a web server keeps: your IP address, what you asked for, and when. What they keep and for how long is theirs to state rather than ours — Vercel’s privacy policy and GitHub’s privacy statement say what each of them does.

Changes, and reaching a person

If any of this stops being true, this page changes in the release that changes it, and the date at the top moves.

There is no support address, because there is no company. Open an issue and a person answers. If it looks like a security problem, send it as a private security advisory instead. About Imark says who that person is, and the terms cover the licence.