Design decisions for the org-roam directory structure
Table of Contents
1. The directory split
The org-roam has 2 top level directories:
private/public/
The main motivation for this is the hard boundary while exporting. I only ever want to export files in the public directory. The export gate here is more direct as the separation is defined by the directory structure.
We can export a cluster of nodes or the entire public directory. While exporting
a cluster of nodes we make sure to filter out notes from the private/ directory.
This should however not be taken as an idiom. We should not have any other directories. Notes go either into private or public.
We can always create domain specific index pages for grouping notes.
2. Where should the hub live?
The hub file index.org lives in the private directory as it also contains
references to the private/ folder. It could live in the same level as the
directories but we would need to implement separate export rules to it.
It is important to understand that the directory structure is irrelevant in
org-roam. The only reason the public/private split exists is to gate exports
properly.