/org-roam

Rudimentary Roam replica with Org-mode

Primary LanguageEmacs LispGNU General Public License v3.0GPL-3.0

License GPL 3 GitHub Release MELPA

Synopsis

Org-roam is a Roam replica built on top of the all-powerful Org-mode.

Org-roam is a solution for effortless non-hierarchical note-taking with Org-mode. With Org-roam, notes flow naturally, making note-taking fun and easy. Org-roam should also work as a plug-and-play solution for anyone already using Org-mode for their personal wiki.

Org-roam aims to implement the core features of Roam, leveraging the mature ecosystem around Org-mode where possible. Eventually, we hope to further introduce features enabled by the Emacs ecosystem.

@technovangelist has produced a video describing Org-roam and the concepts behind it:

Making Connections in your Notes

Important links:

A Preview

Here's a screencast of Org-roam. The org-roam-buffer (window on the right) shows backlinks for the active Org-roam buffer (window on the left), as well as the surrounding content in the backlink file. The database is built once, and updated incrementally. The graph is generated from the link structure, and can be used to navigate to the respective files.

img

Installation

You can install org-roam using package.el:

M-x package-install RET org-roam RET

Here's a sample configuration with using use-package:

(use-package org-roam
      :ensure t
      :hook
      (after-init . org-roam-mode)
      :custom
      (org-roam-directory "/path/to/org-files/")
      :bind (:map org-roam-mode-map
              (("C-c n l" . org-roam)
               ("C-c n f" . org-roam-find-file)
               ("C-c n g" . org-roam-graph-show))
              :map org-mode-map
              (("C-c n i" . org-roam-insert))
              (("C-c n I" . org-roam-insert-immediate))))

org-roam-graph by default expects to find the dot executable from the graphviz package in the exec-path. Ensure graphviz is installed and found if you want to use this feature or customize your configuration for org-roam-graph to use a different tool.

For more detailed installation and configuration instructions (including for Doom and Spacemacs users), please see the documentation.

Knowledge Bases using Org-roam

Changelog

A changelog is being maintained here

Contributing

To report bugs and suggest new feature use the issue tracker. If you have some code which you would like to be merged, then open a pull request. Please also see CONTRIBUTING.md.

License

Copyright © Jethro Kuan and contributors. Distributed under the GNU General Public License, Version 3