VersoWrite.·NoughtCalculate.·SkeinConnect.

Blog·12 August 2026

What makes Skein different

A native Mac knowledge manager for plain Markdown files - what is actually in it, the lessons it inherited from Verso and Nought, and why I use it every day.

Skein exists because of one message. After Verso shipped, someone asked me: would you make a notes app that looks as good as this and is native Mac? I had not planned a third app this year. But part of why I make Mac apps at all is how everything else has started to look - web pages in windows, wearing the menu bar as a disguise - and the question landed on exactly that nerve. So I started looking into it.

The research came first. Obsidian, obviously - let us not kid ourselves, it is the app that inspired the shape of this one. Then the others: iA Writer, Bear, NotePlan, Craft, Logseq, Heptabase. From each I kept two lists - what people love, and what they merely put up with. Skein is built from both.

Two things were decided before a line of code. It would be free. And free could not mean lesser. It had to be good - not only good, better - because Skein has a job to do, and I will get to that at the end. Verso writes, Nought calculates, Skein connects, and it is the third app, so every lesson the other two taught me the hard way is already in it.

This post is the long answer to a short question I keep getting: what is actually in it, and why would I use this over what I have?

A folder of Markdown files, not a database

Everything else follows from one decision. Your notes are plain Markdown files in a folder you choose. Skein opens that folder and builds everything - links, graph, search, queries - as an index it keeps in Application Support, never in your folder. Delete the index and it rebuilds from the files. Your folder stays nothing but notes.

That means no import and no export, because there is nothing to convert. If you already keep an Obsidian vault, point Skein at the same folder and it opens as it is - including your canvases, which Skein reads and writes in the same open JSON Canvas format. A board you edit in Skein still opens in Obsidian afterwards. Coming from Notion instead, Skein imports a Notion export and turns it into plain files that are yours from then on.

It also means Skein never touches the internet. Swift and AppKit, not Electron. No account, no sync service, no telemetry. If you want sync, use any file sync you already trust - and if a sync service changes a file while you are editing it, Skein does not overwrite. It keeps both versions and tells you.

What is actually in Skein

An editor that keeps still. Markdown renders as you type - headings look like headings, bold looks bold - and the text never shifts as the cursor moves, because rendering is decided by what is on the line, never by where the caret sits. Tables have a real editor. Callouts render. Tasks tick with a click and write plain - [x] back to the file. Focus and typewriter modes when you want the room to go quiet. If you prefer raw syntax, one setting shows it, layout still stable.

Links that lead somewhere. Wikilinks with aliases, headings and embeds. Backlinks with the line that mentions you. Unlinked mentions for notes that name this one without linking it. Hover any link to preview the note behind it. Rename a note and every link to it is rewritten across the vault, with an undo that restores the exact previous bytes.

A local graph, not a hairball. Every graph view I have used draws the whole vault as a spider’s web that looks impressive and tells you nothing. Skein’s graph shows the neighbourhood of the note you are reading: parents above, children below, siblings and related notes beside, worked out from your folders and links. Nothing to tag by hand. Click any note to re-centre on it.

An infinite canvas. Cards, connections, groups and colours on a spatial board, stored as plain .canvas files in your vault. The canvas draws only what is on screen, so big boards stay smooth. Double-click for a card, drag from an edge to connect, drop a note from the sidebar onto the board, and a note card opens its note beside the canvas rather than leaving it. Boards export as PDF or an image.

Live queries. A query embedded in a note stays current: every open task across the vault, every note tagged #reading, whatever you ask. The query is plain text in the file; the results are computed from the index. It is the database feature, without the database.

Finding things. Full-text search ranks titles and headings above body text. A quick switcher jumps between notes, a command palette reaches every action, and notes appear in Spotlight alongside everything else on your Mac. Quick capture takes a thought into the vault from anywhere without leaving the app you are in.

A safety net you never think about. A version of every note is kept on every save - notes and canvases both - outside your vault. Deleting moves to the Trash. Export a note as a paginated PDF where headings are never orphaned, as one self-contained HTML file, or as the Markdown verbatim.

The lessons from Verso and Nought

Skein looks like it was designed once, on purpose. It was not. It was designed three times, and the first two apps paid for the education. Four lessons made it across intact.

Never trust a save path. Verso taught me that the moment two programs can write the same file, one of them will eventually eat the other’s work - and the user finds out weeks later. So Skein assumes conflict from the start: mtime checks before every write, conflict copies instead of overwrites, and a version history that runs whether or not you ever open it.

A setting that does nothing is a lie. Early builds of the first two apps had toggles that stored a value and changed nothing. Users find these, and each one costs trust out of proportion to its size. Skein’s settings screen is small because every control on it is real, and it stays small because features are supposed to work without configuration.

Ship the whole feature or do not ship it. The plugin model lets an app ship half a feature and let the community finish it. Skein has no plugins, so nothing can be finished later by someone else. The canvas arrived with alignment guides, keyboard navigation, VoiceOver and export on day one, because in this app there is no one else.

Native is a behaviour, not a compiler flag. Being Swift instead of Electron gets you a small download and fast launch, but that is not what people mean by Mac-like. They mean the Trash is the real Trash, shortcuts are where muscle memory expects them, VoiceOver works, Spotlight finds your notes, and windows follow the system appearance without a white flash on launch. Every one of those is a specific decision someone has to make. Two apps’ worth of those decisions were already made.

Why I actually like it

This week I put Skein and the app I used before side by side on one screen, the same vault in both, and just looked. On one side my chapter was a page: margins, a title that behaved like a title, the properties in a tidy card, one quiet colour doing all the pointing. On the other side I counted about twenty buttons before I found my own writing, and my note sat somewhere in the middle of the machinery like a form waiting to be filled in. I built Skein partly because of how that comparison feels, and it still caught me off guard. My notes looked like mine.

I keep one vault for everything: what I am learning, what I am building, what I have not figured out yet. The honest answer to “why do you like it” is that I stopped noticing it. I open a note in the morning, the day’s tasks are a live query, the graph shows me what yesterday’s idea was next to, and at no point do I maintain anything. The app I wanted was one that would not become a second job. I would judge it on whether you stop noticing it too.

Why it is free

The job I mentioned at the start. Skein is free because it is the advert. Not generosity, and not a trick either - there is no paid tier hiding features, no account to grow into a mailing list, and the donate link unlocks nothing. The strategy, stated plainly: if Skein earns a place on your Mac, one day you might wonder whether the same care went into a word processor and a spreadsheet, and those two are how I pay for this. If you never look, that is fine too. You still have a good app, and I still had to make it better than the alternatives either way - nobody recommends the free thing that feels free.

What Skein deliberately leaves out

No plugins - the features are simply present, and if your workflow depends on community plugins, Skein will honestly feel bare. No account and no sync service - files are files; bring your own sync. No database that owns your notes. No AI, while “no data ever leaves your Mac” and “AI” cannot both be true. No subscription and no paid tier.

Skein is for the Mac, free, and your notes stay plain Markdown files in a folder you control. Get Skein here, see everything that is in it, or read the honest comparison with Obsidian.