# Org/ vs. org/org-roam/ directories OR am I supposed to link to files outside of org-roam?

**URL:** <https://org-roam.discourse.group/t/org-vs-org-org-roam-directories-or-am-i-supposed-to-link-to-files-outside-of-org-roam/1351>\
**Category:** How To\
**Created:** [March 6, 2021, 9:02am UTC](https://org-roam.discourse.group/t/org-vs-org-org-roam-directories-or-am-i-supposed-to-link-to-files-outside-of-org-roam/1351 "2021-03-06T09:02:23Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![vmobat](https://yyz2.discourse-cdn.com/free1/user_avatar/org-roam.discourse.group/vmobat/32/611_2.png) [@vmobat](https://org-roam.discourse.group/u/vmobat)\
**Post date:** [March 6, 2021, 9:02am UTC](https://org-roam.discourse.group/t/org-vs-org-org-roam-directories-or-am-i-supposed-to-link-to-files-outside-of-org-roam/1351/1 "2021-03-06T09:02:23Z")

</div>

I am still figuring out how to use org-roam for notetaking.

One of the issues I am facing is trying to delineate org files and org-roam files.  
I wonder what is seen as “best practice” and how people on this forum separate the two.

**Do you keep org files that belong to org-roam separate? _OR_ do you keep the two together as one folder?**

If you keep two folders separately, do you ever find yourself in need to link from an org-roam file to a regular org-file? Do you see that as an issue?

Thanks

---

<div class="post-metadata">

**Author:** ![nobiot](https://yyz2.discourse-cdn.com/free1/user_avatar/org-roam.discourse.group/nobiot/32/159_2.png) [@nobiot](https://org-roam.discourse.group/u/nobiot)\
**Post date:** [March 6, 2021, 4:26pm UTC](https://org-roam.discourse.group/t/org-vs-org-org-roam-directories-or-am-i-supposed-to-link-to-files-outside-of-org-roam/1351/2 "2021-03-06T16:26:04Z")

</div>

@vmobat,

I separate Org Mode and Org-roam directories. My criteria of separation is that all todo’s (daily, long-term, projects) are Org Mode. All the notes are Org-roam. This essentially means that my use of Org Mode is purely to generate Org Agenda as a tool to visualize my various todo lists (daily, projects, etc.).

I don’t know if my approach is common; the important thing is it works for me. I have seen some of us in the community merge Org Mode and Org-roam as a single tool for agenda and note-taking.

I don’t believe we have seen any set of practices established as “best practices” collectively in this community. My approach above is just my personal one.

---

<div class="post-metadata">

**Author:** ![bepolymathe](https://yyz2.discourse-cdn.com/free1/user_avatar/org-roam.discourse.group/bepolymathe/32/688_2.png) [@bepolymathe](https://org-roam.discourse.group/u/bepolymathe)\
**Post date:** [March 6, 2021, 8:43pm UTC](https://org-roam.discourse.group/t/org-vs-org-org-roam-directories-or-am-i-supposed-to-link-to-files-outside-of-org-roam/1351/3 "2021-03-06T20:43:30Z")

</div>

Personally I use all my .org files in my org-roam folder. Only the “dailies” files are in a “log” folder which is itself in the org-roam folder. My GTD and calendar files are not in the same folder but I make links in my events or tasks to the org-roam files. In “level” terms…

1 Org (dir)  
1.1 GTD (dir)  
1.1.1 [todo.org](http://todo.org) (file)  
1.1.2 [events.org](http://events.org) (file)  
1.2 Org-roam (dir)  
1.2.1 [file1.org](http://file1.org) (file)  
1.2.2 [file2.org](http://file2.org) (file)  
1.2.3 journal (dir)  
1.2.3.1 [2021-03-06.org](http://2021-03-06.org) (file)

---

<div class="post-metadata">

**Author:** ![vmobat](https://yyz2.discourse-cdn.com/free1/user_avatar/org-roam.discourse.group/vmobat/32/611_2.png) [@vmobat](https://org-roam.discourse.group/u/vmobat)\
**Post date:** [March 7, 2021, 9:18am UTC](https://org-roam.discourse.group/t/org-vs-org-org-roam-directories-or-am-i-supposed-to-link-to-files-outside-of-org-roam/1351/4 "2021-03-07T09:18:52Z")

</div>

@nobiot @bepolymathe  
Thank you for sharing your setup.  
I’ve been struggling to figure out what would work best, so that’s certainly very helpful.

Part of the reason why this question came up is that I am not entirely sure what org-roam links bring to the mix relative to “normal” org links.

@bepolymathe  
So looks like you’re making links from GTD to roam files and those are “normal” org links and not “roam”-like links?  
Do you ever link back from org-roam files?

@nobiot do you ever find yourself adding a todo in a org-roam document? do you parse org-roam files when you create your agenda?

---

<div class="post-metadata">

**Author:** ![nobiot](https://yyz2.discourse-cdn.com/free1/user_avatar/org-roam.discourse.group/nobiot/32/159_2.png) [@nobiot](https://org-roam.discourse.group/u/nobiot)\
**Post date:** [March 8, 2021, 10:19am UTC](https://org-roam.discourse.group/t/org-vs-org-org-roam-directories-or-am-i-supposed-to-link-to-files-outside-of-org-roam/1351/5 "2021-03-08T10:19:27Z")

</div>

@vmobat

> [@vmobat](#):
>
> do you ever find yourself adding a todo in a org-roam document? do you parse org-roam files when you create your agenda?

No, and no. The “separation” between Org Mode and Org-roam directories I mentioned above means this: no agenda items (TODOs in my case) from Org-roam notes.

Org-roam notes are … notes on my thoughts and references. If my mind triggers any action item when I am in a note, I simply create a new TODO entry via `C-c C-c`. I don’t feel I need to backlink this todo item to the note. For some reason, actions are quite separate from my thoughts and references in my world (I wonder why myself).

My `org-agenda-files` has only three files:

- “~/home/journal/todo.org”  
simple list of TODO items , used as GTD inbox to review
- “~/home/journal/202103.org”  
it **should be** the daily list of TODOs, but it’s becoming a damping ground; automatically changes when a new month starts
- “~/home/projects/projects.org”  
list of TODOs from my personal projects; no work projects here

Org-roam directory is:  
“~/evergreen”, which contains “work” and “personal” sub-folders.

It’s probably an idiosyncratic approach. I only began to use “work” sub-folder and Org Agenda this year (I am still adjusting the way I use them). My work is mostly organized through Microsoft Office 365 – especially Outlook (email **is** my GTD inbox most of the time) and OneNote (notes). My non-work life is mostly organised with an drawing app in iPad (as replacement for pen and notebook). Emacs started for me as a personal note-taking tool for non-work parts of my life (as drawing apps are not good at text and search).

---

<div class="post-metadata">

**Author:** ![vmobat](https://yyz2.discourse-cdn.com/free1/user_avatar/org-roam.discourse.group/vmobat/32/611_2.png) [@vmobat](https://org-roam.discourse.group/u/vmobat)\
**Post date:** [March 10, 2021, 9:37am UTC](https://org-roam.discourse.group/t/org-vs-org-org-roam-directories-or-am-i-supposed-to-link-to-files-outside-of-org-roam/1351/6 "2021-03-10T09:37:13Z")

</div>

Once again, I really appreciate you sharing the setup.

I am in the early ways of trying to figure out what works and what doesn’t.

For example, I just came to a realization that, for example, I shouldn’t be using my Apple Pencil for taking notes.  
I am still not sure what to do with my “pen on paper notes” I feel like I will keep them for “fleeting notes”.

My work starts to mix in with my personal notes in org, not sure how I feel about that, but I guess I will find out soon.

Thanks!

---

<div class="post-metadata">

**Author:** ![nobiot](https://yyz2.discourse-cdn.com/free1/user_avatar/org-roam.discourse.group/nobiot/32/159_2.png) [@nobiot](https://org-roam.discourse.group/u/nobiot)\
**Post date:** [March 10, 2021, 3:02pm UTC](https://org-roam.discourse.group/t/org-vs-org-org-roam-directories-or-am-i-supposed-to-link-to-files-outside-of-org-roam/1351/7 "2021-03-10T15:02:03Z")

</div>

My pleasure.

With the “pen and paper notes”, I share the same issue. I have been taking notes for work with OneNote, sometimes with Apple Pencil on iPad (it’s great that you can easily carry it around when you hop from one meeting room to another, pre-Covid times of course). OneNote has a great handwriting recognition, which works well with searching hand-written notes.

One thing I would like to experiment is a handwriting recognition technology via Azure or Google Cloud Platform, and use it to generate a searchable text. This way, I should be able to have an Org note (in Org-roam), attach a handwritten note’s image from iPad, and then make it searchable for Ripgrep in Emacs. This way, I should be able to emulate what OneNote does (and does well in one package…).

These handwritten recognition libraries are not part of their free-of-charge services, so I am wondering if it will be worth the effort for the long-term – but it would be much more fun to just even try it 🙂

---

<div class="post-metadata">

**Author:** ![jmburgos](https://yyz2.discourse-cdn.com/free1/user_avatar/org-roam.discourse.group/jmburgos/32/261_2.png) [@jmburgos](https://org-roam.discourse.group/u/jmburgos)\
**Post date:** [March 11, 2021, 11:24am UTC](https://org-roam.discourse.group/t/org-vs-org-org-roam-directories-or-am-i-supposed-to-link-to-files-outside-of-org-roam/1351/8 "2021-03-11T11:24:11Z")

</div>

I keel my org and org-roam files separated. To me, my org-roam files are my “knowledge database”. I do not have TODOS in these files, and are not included in the agenda. On the other hand, I have many org files (nowadays around 70, usually one or more per project), with tasks, reference lists and code related to each project. All org files that are created _outside_ of the org-roam folder are automatically added to the org-agenda file list. I also use org-journal (with weekly files) to do time management and record my daily tasks. My org-journal files are also included in the agenda.

---

<div class="post-metadata">

**Author:** ![ChuckSneed](https://yyz2.discourse-cdn.com/free1/user_avatar/org-roam.discourse.group/chucksneed/32/1379_2.png) [@ChuckSneed](https://org-roam.discourse.group/u/ChuckSneed)\
**Post date:** [November 22, 2023, 6:41pm UTC](https://org-roam.discourse.group/t/org-vs-org-org-roam-directories-or-am-i-supposed-to-link-to-files-outside-of-org-roam/1351/9 "2023-11-22T18:41:53Z")

</div>

I am quite new to using OrgMode and OrgRoam. And this question in the thread header is the same one I had/have.

Currently, I dumped everything into `~/Documents/org/roam/` directory. This directory includes my org documents, and org-roam documents. I let myself the freedom of writing down `TODO` items in my OrgRoam documents, mainly the daily ones. I guess this is a habit that I formed from my brief use of Logseq (it always presents the user a new file for the day, for the user to type-away anything and everything that comes to his mind). So, I also have my `org-agenda-files` variable set as `~/Documents/org/roam/` directory.

One thing I am anxious about is whether org-agenda would groan under the weigth of incoming `TODO` items coming from 10s of different org roam daily files. Any experience? I would be interested in hearing how performant org-agenda’s parsing mechanism is.

Also, does `DONE` items also add to the parsing efforts of org-agenda? Or, once the `TODO` item is marked as `DONE` it goes out of the parsing considerations of org-agenda?

---

<div class="post-metadata">

**Author:** ![akashp](https://yyz2.discourse-cdn.com/free1/user_avatar/org-roam.discourse.group/akashp/32/1383_2.png) [@akashp](https://org-roam.discourse.group/u/akashp)\
**Post date:** [November 23, 2023, 6:53pm UTC](https://org-roam.discourse.group/t/org-vs-org-org-roam-directories-or-am-i-supposed-to-link-to-files-outside-of-org-roam/1351/10 "2023-11-23T18:53:48Z")

</div>

I do the same, I have full org-roam integration - I used logseq before too, but my computer was too old to handle its electronjs framework and it would struggle to render the daily page 😂. I use my dailies page to jot down all different kinds of things, including all todos - I am yet to notice any difference in execution; but I was thinking just today to make a mode that will change all the relevant variables so that I can swap between different folders on demand. \* TODO Something for the future.

---

<div class="post-metadata">

**Author:** ![ChuckSneed](https://yyz2.discourse-cdn.com/free1/user_avatar/org-roam.discourse.group/chucksneed/32/1379_2.png) [@ChuckSneed](https://org-roam.discourse.group/u/ChuckSneed)\
**Post date:** [November 24, 2023, 11:54am UTC](https://org-roam.discourse.group/t/org-vs-org-org-roam-directories-or-am-i-supposed-to-link-to-files-outside-of-org-roam/1351/11 "2023-11-24T11:54:43Z")

</div>

> [@akashp](#):
>
> I used logseq before too, but my computer was too old to handle its electronjs framework and it would struggle to render the daily page 😂

Dude! Same 🙂  
Might you be another thinkpad x230 user?

> [@akashp](#):
>
> I use my dailies page to jot down all different kinds of things, including all todos - I am yet to notice any difference in execution

Cool!

---

<div class="post-metadata">

**Author:** ![akashp](https://yyz2.discourse-cdn.com/free1/user_avatar/org-roam.discourse.group/akashp/32/1383_2.png) [@akashp](https://org-roam.discourse.group/u/akashp)\
**Post date:** [November 26, 2023, 11:17pm UTC](https://org-roam.discourse.group/t/org-vs-org-org-roam-directories-or-am-i-supposed-to-link-to-files-outside-of-org-roam/1351/12 "2023-11-26T23:17:21Z")

</div>

> [@ChuckSneed](#):
>
> Might you be another thinkpad x230 user?

🙌 yes! My main computer is the T440P and my mobile workstation is a X230 (with parts borrowed from X220) 😁

---

<div class="post-metadata">

**Author:** ![ChuckSneed](https://yyz2.discourse-cdn.com/free1/user_avatar/org-roam.discourse.group/chucksneed/32/1379_2.png) [@ChuckSneed](https://org-roam.discourse.group/u/ChuckSneed)\
**Post date:** [November 27, 2023, 11:05am UTC](https://org-roam.discourse.group/t/org-vs-org-org-roam-directories-or-am-i-supposed-to-link-to-files-outside-of-org-roam/1351/13 "2023-11-27T11:05:26Z")

</div>

Here’s to a fellow old Thinkpad enjoyer 🥂

---

<div class="post-metadata">

**Author:** ![akashp](https://yyz2.discourse-cdn.com/free1/user_avatar/org-roam.discourse.group/akashp/32/1383_2.png) [@akashp](https://org-roam.discourse.group/u/akashp)\
**Post date:** [November 28, 2023, 12:13am UTC](https://org-roam.discourse.group/t/org-vs-org-org-roam-directories-or-am-i-supposed-to-link-to-files-outside-of-org-roam/1351/14 "2023-11-28T00:13:10Z")

</div>

> [@ChuckSneed](#):
>
> One thing I am anxious about is whether org-agenda would groan under the weigth of incoming `TODO` items coming from 10s of different org roam daily files. Any experience? I would be interested in hearing how performant org-agenda’s parsing mechanism is.

> **[Speeding Up Your Agendas (The Org Manual)](https://orgmode.org/manual/Speeding-Up-Your-Agendas.html)**
>
> Speeding Up Your Agendas (The Org Manual)

found something related to this.

---

<div class="post-metadata">

**Author:** ![nobiot](https://yyz2.discourse-cdn.com/free1/user_avatar/org-roam.discourse.group/nobiot/32/159_2.png) [@nobiot](https://org-roam.discourse.group/u/nobiot)\
**Post date:** [November 28, 2023, 7:35am UTC](https://org-roam.discourse.group/t/org-vs-org-org-roam-directories-or-am-i-supposed-to-link-to-files-outside-of-org-roam/1351/15 "2023-11-28T07:35:09Z")

</div>

> [@ChuckSneed](#):
>
> One thing I am anxious about is whether org-agenda would groan under the weigth of incoming `TODO` items coming from 10s of different org roam daily files. Any experience? I would be interested in hearing how performant org-agenda’s parsing mechanism is.

Adding to @akashp , I don’t use Org-agenda now but I hear / read that it is a known thing that it can slow down significantly if it has to parse “many” Org files – from what I read, I don’t think it’s about 10s of files. For a better idea, I will paste an excerpt from an excellent [blog article](https://d12frosted.io/posts/2021-01-16-task-management-with-roam-vol5.html) by @d12frosted:

> In my experience, once I reached 1200 note files, `org-agenda` constantly took more than 50 seconds to build, rendering this tool completely useless. But then I realised that only 3% of those files actually contain any `TODO` entries, so there is no need to traverse whole `org-roam-directory` !
> 
> In this article we are going to optimise `org-agenda` back to less than 1 second by dynamically building `org-agenda-files` list to include only files with `TODO` entries. All thanks to the power of `org-roam` and some hooks I am going to describe.

The article also is followed by good discussions with code snippets about how people solve their performance issues of Org-agenda. You can also refer to how @d12frosted himself solves it – with his own sophisticated extension to Org-roam named [Vulpea](https://d12frosted.io/posts/2022-07-14-vulpea-0.3.html).

---

<div class="post-metadata">

**Author:** ![ChuckSneed](https://yyz2.discourse-cdn.com/free1/user_avatar/org-roam.discourse.group/chucksneed/32/1379_2.png) [@ChuckSneed](https://org-roam.discourse.group/u/ChuckSneed)\
**Post date:** [November 28, 2023, 2:08pm UTC](https://org-roam.discourse.group/t/org-vs-org-org-roam-directories-or-am-i-supposed-to-link-to-files-outside-of-org-roam/1351/16 "2023-11-28T14:08:37Z")

</div>

In my current experience, the slow-down I get from `org-agenda` when I assign the `~/Documents/org/roam/` directory as the `org-agenda-file` variable, is less than 10 seconds. I have around 20-30 org-roam docs currently. ALSO, the slow-down that I described as less than 10 secs only occurs during my first time activating `org-agenda`. In the consequent visits to my org-agenda, it loads instantly. I am guessing, after the first time, org-agenda caches its TODO item finds among the files it has checked.

---

<div class="post-metadata">

**Author:** ![akashp](https://yyz2.discourse-cdn.com/free1/user_avatar/org-roam.discourse.group/akashp/32/1383_2.png) [@akashp](https://org-roam.discourse.group/u/akashp)\
**Post date:** [November 28, 2023, 3:46pm UTC](https://org-roam.discourse.group/t/org-vs-org-org-roam-directories-or-am-i-supposed-to-link-to-files-outside-of-org-roam/1351/17 "2023-11-28T15:46:01Z")

</div>

Thank you so much for these references, will surely implement these optimisations in my own set up in the coming week.

---

<div class="post-metadata">

**Author:** ![akashp](https://yyz2.discourse-cdn.com/free1/user_avatar/org-roam.discourse.group/akashp/32/1383_2.png) [@akashp](https://org-roam.discourse.group/u/akashp)\
**Post date:** [November 30, 2023, 12:32pm UTC](https://org-roam.discourse.group/t/org-vs-org-org-roam-directories-or-am-i-supposed-to-link-to-files-outside-of-org-roam/1351/18 "2023-11-30T12:32:45Z")

</div>

I implemented this, unfortunately this majorly breaks my workflow with tags. Anything that doesnt have a Todo associated with it will be excluded from agenda. I use tags to sew together disparate things… is there anyway to get the best of both worlds ?

For now, I have resorted to using using @ with tags, and using ripgrep to find them. I think I can survive like this … if it means that org-agenda wouldn’t clog up my Emacs.

---

<div class="post-metadata">

**Author:** ![nobiot](https://yyz2.discourse-cdn.com/free1/user_avatar/org-roam.discourse.group/nobiot/32/159_2.png) [@nobiot](https://org-roam.discourse.group/u/nobiot)\
**Post date:** [November 30, 2023, 2:44pm UTC](https://org-roam.discourse.group/t/org-vs-org-org-roam-directories-or-am-i-supposed-to-link-to-files-outside-of-org-roam/1351/19 "2023-11-30T14:44:10Z")

</div>

I don’t use `org-agenda` or `vulpea`, so I cannot offer any help from my own experience.

For this particular method described in the blog article, if I read it correctly, the method uses an SQL query on the org-roam db file and looks for TODO headlines with a “project” tag…

I am not entirely sure how you use tags and TODO, but perhaps you could adapt the SQL query to include other tags you use. If this is not a way to go for you for some reason, then it simply means the method is not a good fit for your workflow.

Since it is a known limitation of `org-agenda` that parsing multiple files slows it down, I suspect that using it for daily files that grow each day may not be a good way.

---

<div class="post-metadata">

**Author:** ![akashp](https://yyz2.discourse-cdn.com/free1/user_avatar/org-roam.discourse.group/akashp/32/1383_2.png) [@akashp](https://org-roam.discourse.group/u/akashp)\
**Post date:** [November 30, 2023, 3:02pm UTC](https://org-roam.discourse.group/t/org-vs-org-org-roam-directories-or-am-i-supposed-to-link-to-files-outside-of-org-roam/1351/20 "2023-11-30T15:02:49Z")

</div>

how do you use tags in your workflow if i may ask?  
I like the setup and I have adapted around it. I have also adopted many other optimisations such as moving all my custom functions to a seperate folder and autoloading them etc, I have almost halved the startup time, and I quite like it.

[Next page](https://org-roam.discourse.group/t/org-vs-org-org-roam-directories-or-am-i-supposed-to-link-to-files-outside-of-org-roam/1351.md?page=2)
