# Development

**URL:** https://org-roam.discourse.group/c/dev/5.md

[Latest](https://org-roam.discourse.group/latest.md) · [Categories](https://org-roam.discourse.group/categories.md)

---

## [About the Development category](https://org-roam.discourse.group/t/about-the-development-category/12)

<div class="topic-metadata">

**Author:** [@jethro](https://org-roam.discourse.group/u/jethro)\
**Replies:** 0

</div>

Development discussion about Org-roam, and related packages (e.g. org-roam-bibtex).

---

## [Org-roam-gt: add a "dashboard" to org-roam](https://org-roam.discourse.group/t/org-roam-gt-add-a-dashboard-to-org-roam/3950)

<div class="topic-metadata">

**Author:** [@dmg](https://org-roam.discourse.group/u/dmg)\
**Replies:** 2\
**Last updated:** [September 29, 2026, 2:09am UTC](https://org-roam.discourse.group/t/org-roam-gt-add-a-dashboard-to-org-roam/3950 "2026-09-29T02:09:25Z")

</div>

Hi everybody, I have added an org-roam dashboard feature to org-roam-gt. The command org-roam-gt-list enumerates all nodes in the DB using a tabular-list-mode and allow to browse/sort the list and navigate quickly to a…

---

## [Rewriting org-roam-node-list for speed (it is not sqlite)](https://org-roam.discourse.group/t/rewriting-org-roam-node-list-for-speed-it-is-not-sqlite/3475)

<div class="topic-metadata">

**Author:** [@dmg](https://org-roam.discourse.group/u/dmg)\
**Replies:** 91\
**Last updated:** [September 9, 2026, 9:49pm UTC](https://org-roam.discourse.group/t/rewriting-org-roam-node-list-for-speed-it-is-not-sqlite/3475 "2026-09-09T21:49:13Z")

</div>

Please see attached profiler report. This is consistent in my runs: 80% of the time in org-roam-node-list is spent transforming the SQL result to a list of notes. I think there is something wrong with the code, and it mi…

---

## [Org-roam-db-map-citations is one reason saves are slow](https://org-roam.discourse.group/t/org-roam-db-map-citations-is-one-reason-saves-are-slow/3949)

<div class="topic-metadata">

**Author:** [@dmg](https://org-roam.discourse.group/u/dmg)\
**Replies:** 0\
**Last updated:** [August 22, 2026, 5:26am UTC](https://org-roam.discourse.group/t/org-roam-db-map-citations-is-one-reason-saves-are-slow/3949 "2026-08-22T05:26:42Z")

</div>

My save times are getting longer on a file. I profiled it, it is org-roam-db-map-links. it should be guarded so it is only called if there are citations in the file, plus it should use a method similar to org-roam-db-ma…

---

## [Fork logseq to make alternative org-roam frontend](https://org-roam.discourse.group/t/fork-logseq-to-make-alternative-org-roam-frontend/3769)

<div class="topic-metadata">

**Author:** [@hermanhelf](https://org-roam.discourse.group/u/hermanhelf)\
**Replies:** 3\
**Last updated:** [August 9, 2026, 10:44pm UTC](https://org-roam.discourse.group/t/fork-logseq-to-make-alternative-org-roam-frontend/3769 "2026-08-09T22:44:07Z")

</div>

Logseq is great and already compatible with org-roam in many ways(displaying highlight, the outliner structure (to some extent), id-link). However there’s still a list of stuff that are markdown-faced hardcoded, unconfi…

---

## [My alternate template system now is optional and in org-roam-gt](https://org-roam.discourse.group/t/my-alternate-template-system-now-is-optional-and-in-org-roam-gt/3911)

<div class="topic-metadata">

**Author:** [@dmg](https://org-roam.discourse.group/u/dmg)\
**Replies:** 5\
**Last updated:** [May 25, 2026, 9:16pm UTC](https://org-roam.discourse.group/t/my-alternate-template-system-now-is-optional-and-in-org-roam-gt/3911 "2026-05-25T21:16:32Z")

</div>

hi everybody, This weekend I upgraded to Org 9.8 and found a bunch of small errors here and there due to breaking changes. I decided to rework my template system and instead of being built on top of org-roam, I decided …

---

## [Linter for org-roam (and python's orgparse is fast)](https://org-roam.discourse.group/t/linter-for-org-roam-and-pythons-orgparse-is-fast/3884)

<div class="topic-metadata">

**Author:** [@dmg](https://org-roam.discourse.group/u/dmg)\
**Replies:** 0\
**Last updated:** [November 29, 2025, 5:34pm UTC](https://org-roam.discourse.group/t/linter-for-org-roam-and-pythons-orgparse-is-fast/3884 "2025-11-29T17:34:16Z")

</div>

ids in the DB are supposed to be unique, but org-roam does not report an error when that is not the case. I knew I had a bunch of them so, and decided to simply write a python tool to scan the files. THis is also a pr…

---

## [Code Blocks not isolating content correctly](https://org-roam.discourse.group/t/code-blocks-not-isolating-content-correctly/3881)

<div class="topic-metadata">

**Author:** [@2xpltqpf0](https://org-roam.discourse.group/u/2xpltqpf0)\
**Replies:** 3\
**Last updated:** [November 14, 2025, 3:20am UTC](https://org-roam.discourse.group/t/code-blocks-not-isolating-content-correctly/3881 "2025-11-14T03:20:14Z")

</div>

In org files, I want to have a code block which has markdown format. org mode, even though the markdown content is wrapped in a #+BEGIN\_SRC markdown #+END\_SRC block, still formats the content of the block as new org …

---

## [Interesting posting on parsing org-files in bulk](https://org-roam.discourse.group/t/interesting-posting-on-parsing-org-files-in-bulk/3880)

<div class="topic-metadata">

**Author:** [@dmg](https://org-roam.discourse.group/u/dmg)\
**Replies:** 1\
**Last updated:** [November 6, 2025, 7:16pm UTC](https://org-roam.discourse.group/t/interesting-posting-on-parsing-org-files-in-bulk/3880 "2025-11-06T19:16:33Z")

</div>

@akashp @meedstrom This is an interesting posting on the bottleneck of parsing org-files

---

## [Deft-Roam: Deft for Org-roam users](https://org-roam.discourse.group/t/deft-roam-deft-for-org-roam-users/3875)

<div class="topic-metadata">

**Author:** [@solrach](https://org-roam.discourse.group/u/solrach)\
**Replies:** 0\
**Last updated:** [October 15, 2025, 11:53pm UTC](https://org-roam.discourse.group/t/deft-roam-deft-for-org-roam-users/3875 "2025-10-15T23:53:49Z")

</div>

A simple Deft variation that works directly with the Org-roam database instead of scanning files. It loads all node information (title, tags, mtime) once from SQLite and filters results entirely in memory, similar to how…

---

## [Org-keep: early proof of concept (Google Keep UI for org-roam)](https://org-roam.discourse.group/t/org-keep-early-proof-of-concept-google-keep-ui-for-org-roam/3869)

<div class="topic-metadata">

**Author:** [@solrach](https://org-roam.discourse.group/u/solrach)\
**Replies:** 3\
**Last updated:** [October 13, 2025, 1:46am UTC](https://org-roam.discourse.group/t/org-keep-early-proof-of-concept-google-keep-ui-for-org-roam/3869 "2025-10-13T01:46:21Z")

</div>

Ok, just a pre-pre-alpha proof of concept. I’m a heavy Google Keep user and first tried to hack something similar inside Emacs (naïve move…), so I ended up with this instead. I wanted to keep it simple, so it’s built o…

---

## [Just curious about the reason for a change](https://org-roam.discourse.group/t/just-curious-about-the-reason-for-a-change/3863)

<div class="topic-metadata">

**Author:** [@eamonnsullivan](https://org-roam.discourse.group/u/eamonnsullivan)\
**Replies:** 3\
**Last updated:** [September 25, 2025, 10:12am UTC](https://org-roam.discourse.group/t/just-curious-about-the-reason-for-a-change/3863 "2025-09-25T10:12:26Z")

</div>

I noticed in all of my capture templates (which are mostly entry type) that the id is now created on the first headline, rather than at the top of the file. (Seems to be this pull request.) I don’t have a strong opinion…

---

## [Org Roam UI Lite](https://org-roam.discourse.group/t/org-roam-ui-lite/3852)

<div class="topic-metadata">

**Author:** [@tani](https://org-roam.discourse.group/u/tani)\
**Replies:** 9\
**Last updated:** [August 24, 2025, 3:24pm UTC](https://org-roam.discourse.group/t/org-roam-ui-lite/3852 "2025-08-24T15:24:35Z")

</div>

I’m excited to introduce org-roam-ui-lite, a lightweight and maintainable reimplementation of org-roam-ui’s core visualization features. Built with deep respect for the original project’s vision, this implementation focu…

---

## [Org-roam development status, May 2025](https://org-roam.discourse.group/t/org-roam-development-status-may-2025/3810)

<div class="topic-metadata">

**Author:** [@dustinfarris](https://org-roam.discourse.group/u/dustinfarris)\
**Replies:** 18\
**Last updated:** [July 17, 2025, 9:09am UTC](https://org-roam.discourse.group/t/org-roam-development-status-may-2025/3810 "2025-07-17T09:09:28Z")

</div>

Hi gang, I’ve taken on a member role in the org-roam organization to help shepard the project along. This year I was able to bring things up to speed with built-in SQLite support for Emacs 29 and later, and work through…

---

## [Should org-roam's treatment of all IDs as nodes be opt-in?](https://org-roam.discourse.group/t/should-org-roams-treatment-of-all-ids-as-nodes-be-opt-in/2557)

<div class="topic-metadata">

**Author:** [@liam](https://org-roam.discourse.group/u/liam)\
**Replies:** 2\
**Last updated:** [April 12, 2022, 8:43pm UTC](https://org-roam.discourse.group/t/should-org-roams-treatment-of-all-ids-as-nodes-be-opt-in/2557 "2022-04-12T20:43:55Z")

</div>

I was thinking about this recently. Org-roam is an Org extension, while IDs are a native feature. Other Org extensions, including org-attach (which is also part of Org upstream), and org-caldav, use IDs in very different…

---

## [Documentation of org-roam in org-roam](https://org-roam.discourse.group/t/documentation-of-org-roam-in-org-roam/3812)

<div class="topic-metadata">

**Author:** [@dmg](https://org-roam.discourse.group/u/dmg)\
**Replies:** 2\
**Last updated:** [June 7, 2025, 4:13pm UTC](https://org-roam.discourse.group/t/documentation-of-org-roam-in-org-roam/3812 "2025-06-07T16:13:00Z")

</div>

I just finished @nobiot 's great intro to org-roam part 2. I think these are the documents that should be somehow incorporated into org-roam’s documentation. I have always felt that the documentation for templates is n…

---

## [Directional and concept mapping links](https://org-roam.discourse.group/t/directional-and-concept-mapping-links/3788)

<div class="topic-metadata">

**Author:** [@mienfao](https://org-roam.discourse.group/u/mienfao)\
**Replies:** 1\
**Last updated:** [April 2, 2025, 4:57pm UTC](https://org-roam.discourse.group/t/directional-and-concept-mapping-links/3788 "2025-04-02T16:57:46Z")

</div>

Does org-roam have capability for links that show inheritance and direction for concept mapping? For example, parent, child, sibling, next and previous links? I have been considering using vulpea to interpret metadata i…

---

## [Org-roam as filesystem](https://org-roam.discourse.group/t/org-roam-as-filesystem/3666)

<div class="topic-metadata">

**Author:** [@orgroamer](https://org-roam.discourse.group/u/orgroamer)\
**Replies:** 6\
**Last updated:** [November 16, 2024, 11:20am UTC](https://org-roam.discourse.group/t/org-roam-as-filesystem/3666 "2024-11-16T11:20:43Z")

</div>

Is it possible to include all files in the Org-roam graph, not just Org files? It would be awesome to see them in org-roam-ui too. I have read some stuff about trying to make Org-roam a filesystem, but not anything in th…

---

## [The cost of org-roam-db-sync](https://org-roam.discourse.group/t/the-cost-of-org-roam-db-sync/3656)

<div class="topic-metadata">

**Author:** [@dmg](https://org-roam.discourse.group/u/dmg)\
**Replies:** 2\
**Last updated:** [November 9, 2024, 11:01pm UTC](https://org-roam.discourse.group/t/the-cost-of-org-roam-db-sync/3656 "2024-11-09T23:01:19Z")

</div>

Today I had to run org-roam-db-sync what annoys me is that org-roam opens the file as if interactively (meaning all the modes and hooks that I use get enabled… for example… generating latex previews…) this is an proces…

---

## [Advice for an \`org-follow-mode\` following org/org-roam links?](https://org-roam.discourse.group/t/advice-for-an-org-follow-mode-following-org-org-roam-links/3631)

<div class="topic-metadata">

**Author:** [@wehlutyk](https://org-roam.discourse.group/u/wehlutyk)\
**Replies:** 12\
**Last updated:** [October 29, 2024, 9:29pm UTC](https://org-roam.discourse.group/t/advice-for-an-org-follow-mode-following-org-org-roam-links/3631 "2024-10-29T21:29:14Z")

</div>

Hello all, and first of all thanks to everybody for this amazing tool! I’m trying to add a minor org-follow-mode somewhere between org-agenda-follow-mode and org-roam-ui-follow-mode. While this is not strictly an org-r…

---

## [A different canonical ‘title’ for subheadings with Org IDs?](https://org-roam.discourse.group/t/a-different-canonical-title-for-subheadings-with-org-ids/3564)

<div class="topic-metadata">

**Author:** [@butter-radish](https://org-roam.discourse.group/u/butter-radish)\
**Replies:** 7\
**Last updated:** [October 24, 2024, 6:33am UTC](https://org-roam.discourse.group/t/a-different-canonical-title-for-subheadings-with-org-ids/3564 "2024-10-24T06:33:34Z")

</div>

When I make subheadings into their own nodes (by giving them IDs), nearly all of the time I would prefer they have a different title for search (-ing from everywhere else) than the heading’s name in the document. So, for…

---

## [Preconceived Ideas & org-roam-node-find Performance](https://org-roam.discourse.group/t/preconceived-ideas-org-roam-node-find-performance/3568)

<div class="topic-metadata">

**Author:** [@lyndhurst](https://org-roam.discourse.group/u/lyndhurst)\
**Replies:** 5\
**Last updated:** [September 10, 2024, 9:47am UTC](https://org-roam.discourse.group/t/preconceived-ideas-org-roam-node-find-performance/3568 "2024-09-10T09:47:53Z")

</div>

Since I finally got more comfortable with Elisp and Org-roam lately, I decided to revisit my config to make some improvments. A big part of this work focuses on how I organize my notes (metadata, subfolders), and query …

---

## [Improving performance of node-find et. al](https://org-roam.discourse.group/t/improving-performance-of-node-find-et-al/3326)

<div class="topic-metadata">

**Author:** [@Zetagon](https://org-roam.discourse.group/u/Zetagon)\
**Replies:** 31\
**Last updated:** [July 28, 2024, 5:06pm UTC](https://org-roam.discourse.group/t/improving-performance-of-node-find-et-al/3326 "2024-07-28T17:06:24Z")

</div>

Hello. I think I’m starting to run into performance problems of org-roam-node-find and the other completing-read functions. They freeze up Emacs for a second or two each time I call them. I am pretty sure this is becaus…

---

## [Org dynamic blocks: listing dangling links](https://org-roam.discourse.group/t/org-dynamic-blocks-listing-dangling-links/3494)

<div class="topic-metadata">

**Author:** [@dmg](https://org-roam.discourse.group/u/dmg)\
**Replies:** 3\
**Last updated:** [June 9, 2024, 5:50pm UTC](https://org-roam.discourse.group/t/org-dynamic-blocks-listing-dangling-links/3494 "2024-06-09T17:50:49Z")

</div>

I decided to learn how to do dynamic blocks in org-mode. This one lists all the dangling links in the database. it takes an optional parameter to limit the number of links listed. It can be easily adapted to other uses…

---

## [Materialized View for Org-roam.db using sqlite triggers](https://org-roam.discourse.group/t/materialized-view-for-org-roam-db-using-sqlite-triggers/3483)

<div class="topic-metadata">

**Author:** [@akashp](https://org-roam.discourse.group/u/akashp)\
**Replies:** 27\
**Last updated:** [June 3, 2024, 4:28am UTC](https://org-roam.discourse.group/t/materialized-view-for-org-roam-db-using-sqlite-triggers/3483 "2024-06-03T04:28:32Z")

</div>

Testing a Materialized View implementation using triggers. Requesting testers and general help and advice, thanks for your time. Test Suite to generate org samples is given below – click arrow: Test Suite#!/bin/bash…

---

## [Improving org-roam-format-template (next to make org-roam-node-find fast)](https://org-roam.discourse.group/t/improving-org-roam-format-template-next-to-make-org-roam-node-find-fast/3480)

<div class="topic-metadata">

**Author:** [@dmg](https://org-roam.discourse.group/u/dmg)\
**Replies:** 8\
**Last updated:** [May 30, 2024, 3:16am UTC](https://org-roam.discourse.group/t/improving-org-roam-format-template-next-to-make-org-roam-node-find-fast/3480 "2024-05-30T03:16:08Z")

</div>

I was profiling the code of org-roam-node-find and the biggest bottleneck (after the improvements to org-roam-node-list) is the processing, for each node, of the template (it is using around 80% of the total time of find…

---

## [Sqlite database column types](https://org-roam.discourse.group/t/sqlite-database-column-types/3412)

<div class="topic-metadata">

**Author:** [@kalin](https://org-roam.discourse.group/u/kalin)\
**Replies:** 4\
**Last updated:** [May 18, 2024, 6:46pm UTC](https://org-roam.discourse.group/t/sqlite-database-column-types/3412 "2024-05-18T18:46:44Z")

</div>

Hello fellow org-roamers, I am trying to build a graph visualizer for myself in Rust. I use sqlx for interaction with the database, which allows you to load rows into a user-defined struct, very convenient. It does requ…

---

## [Improving org-roam capture and templates](https://org-roam.discourse.group/t/improving-org-roam-capture-and-templates/3372)

<div class="topic-metadata">

**Author:** [@dmg](https://org-roam.discourse.group/u/dmg)\
**Replies:** 2\
**Last updated:** [April 23, 2024, 9:30pm UTC](https://org-roam.discourse.group/t/improving-org-roam-capture-and-templates/3372 "2024-04-23T21:30:08Z")

</div>

hi everybody, I decided to look at the capture processing. I wanted to see if I could address the issue that the destination node is being asked for even if the template does not use it. I ended cleaning up the code an…

---

## [Add Link-tags feature](https://org-roam.discourse.group/t/add-link-tags-feature/171)

<div class="topic-metadata">

**Author:** [@alan](https://org-roam.discourse.group/u/alan)\
**Replies:** 37\
**Last updated:** [March 9, 2024, 4:35pm UTC](https://org-roam.discourse.group/t/add-link-tags-feature/171 "2024-03-09T16:35:37Z")

</div>

Link-tags! What are they? I don’t love the term, but it’s functional and apropos for comparison to the much-more-common note-/file-tags (or just… ‘tag’). If you have a better term, please chime in! The basic idea is whil…

---

## [Nroam - Org-roam backlinks within org-mode buffers](https://org-roam.discourse.group/t/nroam-org-roam-backlinks-within-org-mode-buffers/1306)

<div class="topic-metadata">

**Author:** [@NicolasPetton](https://org-roam.discourse.group/u/NicolasPetton)\
**Replies:** 16\
**Last updated:** [February 15, 2024, 6:16pm UTC](https://org-roam.discourse.group/t/nroam-org-roam-backlinks-within-org-mode-buffers/1306 "2024-02-15T18:16:58Z")

</div>

Hi! I’ve been working on a package named nroam, a supplementary package for org-roam that replaces the backlink side buffer. Instead, it displays org-roam backlinks at the end of org-roam buffers. The package is q…

[Next page](https://org-roam.discourse.group/c/dev/5.md?page=1)
