Tooling

Emacs Org-mode & Org-roam

The original PKM-as-text — capture, refile, agenda, babel, and Zettelkasten via Org-roam.

Org-mode predates "PKM" as a term and still defines the upper bound of what plain-text knowledge work can do. Pair with pkm-overview-methodologies; FOSS alternatives in pkm-logseq-deep and pkm-obsidian-deep; academic flow in pkm-academic-zotero-workflow; see also pkm-zettelkasten, markdown.

Why Org-mode

  • ★ ★ Free OSS (GPL); ships with GNU Emacs.
  • ★ ★ Plain text. .org files; readable in any editor; survives any tool.
  • Outliner + tasks + agenda + capture + babel in one.
  • Babel — literate programming in 50+ languages from inside notes; runs code blocks, captures output. Unique to Org.
  • Capture templatesC-c c from anywhere on your machine; route to inbox, daily journal, project, etc.
  • Agenda — calendar / TODO view across all your .org files; the gold standard for plain-text task management.
  • RefileC-c C-w moves a tree to the right place; the Org idiom for inbox processing.
  • Tags + properties — first-class metadata.

Org-roam (Zettelkasten extension)

  • ★ ★ Org-roam — free OSS; Zettelkasten on top of Org-mode. SQLite-backed graph; bidirectional links; daily journals.
  • Org-roam-ui — graph visualisation; D3-based; works in browser.
  • Org-roam-bibtex — Zotero / BibTeX integration.
  • Org-noter — synchronised PDF + notes (split-pane).
  • Org-fc / Anki-editor — flashcards / Anki sync — see pkm-pkm-meets-anki.

Distributions for non-Emacs people

  • Doom Emacs — opinionated, pre-configured Emacs distribution; +roam module flips on Org-roam. The fastest path in.
  • Spacemacs — older, slower-moving alternative.
  • vanilla init.el — for tinkerers; build your own.
  • Logseq with .org files — Logseq supports .org; you can use Logseq as a friendlier UI on the same files. See pkm-logseq-deep.
  • Obsidian + Org-mode plugin — limited; treats Org as another markdown flavour.

Sync options

  • git + magit — Org files in a git repo; Magit makes commits trivial inside Emacs.
  • Syncthing — for cross-device sync — see pkm-sync-storage-syncthing.
  • Beorg / Plain Org (paid iOS apps) — Org-mode mobile; sync via iCloud or WebDAV.
  • Orgzly Revived (Android, free OSS) — the Android Org client.
  • DAVx5 + Nextcloud — calendar / contacts sync if you use Org for those.

Capture workflow (the killer feature)

  • C-c c anywhere — global keybinding for capture.
  • Templatest for TODO, j for journal, r for reading, m for meeting. Each routes to a specific file/heading and pre-fills frontmatter.
  • %a captures a link back to wherever you were (email, file, browser).
  • Inbox refile cycle — capture into inbox.org; weekly refile into projects.org / someday.org / archive.org.
  • This is the template that all "second brain" tools rip off.

Babel — literate programming inside notes

  • Run code blocks inline. Python, R, Bash, SQL, even Mermaid / D2 / PlantUML.
  • Outputs captured as data — feed into the next block.
  • Use cases — research notebooks, runbooks (run the command from the note), data analysis, weekly reviews where you compute stats from your own files.
  • org-babel-tangle — extract code from prose into source files; reverse of "embed code in markdown."

Org-mode for academics

Strengths vs. markdown tools

  • Capture / agenda / babel — no markdown tool matches this.
  • Zero lock-in. Plain text; readable in 30 years.
  • Programmable. Emacs Lisp tweaks for any workflow.
  • One tool for tasks + notes + email + RSS + IRC if you want.

Weaknesses

  • Emacs. Steep learning curve; muscle memory is alien if you don't already use it.
  • Mobile. Beorg / Orgzly are decent but lag desktop badly.
  • No friends. Convincing a team to adopt Org is a non-starter.
  • Not WYSIWYG. Markdown previewers / Obsidian Live Preview have spoiled people.
  • Plugin churn. Org-roam v1 → v2 broke setups.

Plain-text + Vim alternatives

  • Vimwiki — free OSS; markdown / wiki-style links inside Vim.
  • Wiki.vim — successor; modern Vim wiki.
  • Neorg — Neovim's Org-mode-shape; smaller community but active.
  • Markor (Android) — free OSS; opens any markdown / Org folder; a viable mobile companion to a plain-text PKM.

Pick this if…

  • You already live in Emacs: Org-roam is the obvious answer.
  • You want maximum portability + power: Org-mode + git + Syncthing is the most powerful PKM you can build, period — at the cost of Emacs.
  • You want literate programming + notes: no other tool does this.
  • You're not in Emacs and don't want to be: Obsidian or Logseq — see pkm-obsidian-deep, pkm-logseq-deep.
  • Mobile-first PKM: anything but Org-mode.

On this page