Articles
Published · July 26, 2026

A Plain-Text Zettelkasten: Linking Notes Without a Special App

The Zettelkasten method is a linking discipline, not a piece of software. Atomic notes, stable IDs, and text-reference links do the whole job — here's how to run one in a folder of plain Markdown files, and how to find your backlinks with a single grep command.

Quick answer

A Zettelkasten is a linking discipline, not a piece of software: give each note a unique ID, write one idea per note, and link related notes by referencing their IDs directly in the text. All three work in a folder of plain Markdown files — no dedicated app required. This piece walks through the three ingredients, when the discipline pays off, and how a fast plain-text editor makes the day-to-day part easier without changing the method itself.

How it actually works

Atomic notes and unique IDs

Keep one idea per note, written completely enough to stand on its own months later. That's the atomicity principle behind the whole method, and it holds regardless of tool. Each note also needs a stable identifier that never changes — typically a timestamp — so a link to it still resolves even after you rename the note's title. In practice that's a filename like 20260315-0930-atomic-notes.md: the timestamp is the ID, the rest is just a human-readable label.

This isn't a modern shortcut. Niklas Luhmann built a Zettelkasten of roughly 90,000 index cards starting in the 1950s, using branching index numbers as IDs, and credited the system for his prolific research output. If a paper-card version scales to a lifetime of work, a folder of Markdown files with timestamp filenames scales too.

Linking without a special app

A link is just a text reference to another note's ID. No plugin, no proprietary link format — a plain reference works:

See also: 20260301-0900-luhmanns-numbering.md

If your editor supports reference-style Markdown links, you can make that reference clickable and keep the link targets collected at the bottom of the note:

This idea builds on [Luhmann's numbering scheme][luhmann-note].

[luhmann-note]: 20260301-0900-luhmanns-numbering.md

Either form is enough. What matters is that the ID stays put and the reference points at it.

Tags, links, and Folgezettel

Not every connection between notes carries the same weight. Zettelkasten practice distinguishes a few tie types. Tags cluster notes loosely around a topic and can overlap freely. A direct link is the strongest voluntary connection, since it's intentional and works in both directions through backlinks. Folgezettel — branching IDs like 1, 1a, 1b — build a structured sequence for notes that genuinely extend one another, rather than just following in time. You don't need all three on day one: start with links, add tags once you notice recurring themes, and reach for Folgezettel only when a note is truly a child of another.

Backlinks with grep, not software

A dedicated Zettelkasten app shows you every note that links to the one you're reading. You can build the same list yourself by searching your notes folder for a note's ID:

rg "20260301-0900-luhmanns-numbering" ~/notes

Every match is a note that ties back to it — the same technique that works for searching your notes generally. Pair that with a plain-text capture-and-organize habit, and the whole loop — capture, link, retrieve — runs on nothing but files and a search command.

When to use it (and when to skip it)

The discipline earns its keep on ongoing research and recurring writing projects: anything where you're building a body of interlinked thinking over months or years, and where re-reading an old note next to its neighbors is genuinely useful. It costs you something too, and it's worth saying so — without a graph view or an automatic backlinks pane, surfacing old connections takes a deliberate search instead of a glance at a sidebar. That's a real trade-off, not a hidden one.

For a single short-lived project, or notes you'll capture once and never revisit, skip the ID-and-link overhead. A dated note in a scratch file does the job. You can always promote it into the linked system later if it turns out to matter.

How Carets fits in

A plain-text Zettelkasten is only as pleasant as the editor you write it in — that's where Carets fits. It's a fast, native Markdown and plain-text editor for iPhone, iPad, and Mac, organized into files, projects, and tags. Your notes stay plain text, with no proprietary format locking your IDs and links into one app's database, so the linking convention above works exactly as written, today and years from now. Files, projects, and tags give you a place to group a growing archive without forcing rigid folders, and native performance on iOS and Mac means writing a quick note and following a link back to an older one both stay fast, even as the archive grows into the thousands.

Carets is available on the App Store for iPhone, iPad, and Mac.

Frequently Asked Questions

Do I need special Zettelkasten software to use the method?

No. The method itself only requires atomic notes, unique IDs, and links between them — plain text files with a consistent naming convention cover all three.

How do I create a link between two plain-text notes?

Reference the other note's filename or ID directly in the text, either as a bare reference or a reference-style Markdown link. Because the ID is stable, the link keeps working even if you rename the note's title later.

How do backlinks work without an app that tracks them automatically?

Search your notes folder for a note's ID with a tool like ripgrep. Every match is a note linking back to it — the same result a dedicated backlinks pane shows, just one command away instead of automatic.

What's the difference between tags and links in a Zettelkasten?

Tags group notes loosely by topic and can overlap; links are an explicit, intentional connection between two specific notes and work bidirectionally through backlinks. Use tags for broad clustering and links for the connections you actually want to think through again.

Conclusion

The Zettelkasten method is a linking discipline: atomic notes, stable IDs, and intentional references between them. None of that requires an app — a folder of Markdown files and a search command cover the whole mechanic. Start with one note, one ID, and one link to a related note. The rest of the system grows from there.