Roam Research, new web-based outliner that supports transclusion & wiki features - thoughts?

It was literally what he was doing there entire video, using references from other docs all the time. One can use embeds instead of references too, to make that “cloned” stuff editable in place, when needed.
Each time he drags something and green “+” icon appears, it creates reference to the stuff he is dragging. (by alt+drag on mac / ctrl+drag on win)

1 Like

Yes, I completely agree that it comes down to preference.

For me, I very much enjoy the fact that in Roam my projects don’t need a dedicated space (at least not a single one).

Personally, I’ve just never been fully comfortable with my permanent hierarchies in Dynalist, and I’ve tried several different systems. I’ll be the first to admit that this type of organization isn’t my strong suit, so it’s possible that the shortcoming is my own rather than with the tool. But that’s the nice thing about a plurality of tools – we can find the one that compensates for the things we don’t do well.

I’m slowly easing into Roam, but a lot of dominoes would still have to fall before I could even consider leaving Dynalist. For now it’s a fun thing to explore.


Strange. It looked more like cut right paste left.

This is possible in roam, it’s called a reference block! The downside of using them is that they are not editable in their cloned location (though you can tick the box if it’s a to-do as well as expand and collapse the outline).

A question while exploring Roam Research some more:

It looks like [[ is used to refer to a “page” and (( is used to refer to a “block” (similar to an “item” in Dynalist), did I understand correctly?

So although you can freely create pages, to refer to them you’ll at least remember if it’s a page or a bullet point under a page, is that right?

Maybe you saw some cut and paste, but entire video is to show how one can outline article with references from other sources. It’s hard to see that on video due to it’s quality, but almost everything there was underlined and with slightly smaller font, this is how references are styled.

One can also use {{embed: ((blockId))}} to make them editable.


Any example when page could be confused with block? I have 500+ docs there and never found this to be a problem.
In case you would be confused, and for some reason you don’t want to use [[ or search-box to check if something has page, using (( also shows you that, because results are listed in markdown, pages are between [[...]]. When you’re looking for meditation with (( and you write ((medi and see e.g. I want to start practicing [[Meditation]] you know you have also page about that.

1 Like

Yes, and the easy shortcut to that is to type / then choose Block Embed. Then you will get a search box for blocks. Block Embeds can also have their children expanded, but you need to use the keyboard shortcut to expand it.

1 Like

+1 for sidebar and drag and drop
+1 for embed iframes

I’ve used Dynalist heavily for a few years now as a “second brain”. I use it for my personal tasks and project management, for knowledge management and note-taking, and for things like packing lists and shopping lists.

I’ve recently been experimenting with Roam for some pieces of that. My take right now: Dynalist is a much more mature and polished product. It will take Roam a while to catch up both on general UI polish and overall feature set. There are, however, a couple of things that Roam really gets right - so much so that it may be worth it to me to switch my whole setup over.

Backlinks have been the focus of this discussion, so I won’t go on about them except to say that they really do free you from hierarchy in the way people have said.

Transclusion is a much bigger deal, I think. See this little clip for example:

Being able to pull up a chunk of an outline from anywhere else and include it right where you are, turns out to be super useful. So for example I can reference an individual task in multiple places, pull up a quote or a piece of boilerplate from somewhere else, etc. Not only that but there’s a whole query syntax that allows you to transclude a specific search, like “all incomplete tasks with X label but not with Y label.”

Daily pages are your initial point of entry, and that turns out to be a very useful setup. I was previously doing a daily braindump/journal in text files. Having that process integrated with my todos and everything else is really handy.

The sidebar (shift-click on something to open it on the side instead of the main area) seemed like kind of a silly thing, until I started using it. Being able to see multiple pages at once, and drag things between them (or shift-drag to transclude!) turns out to be extremely convenient.

Attributes let you add semi-structured data to items; so for example if I could make a list of air conditioners along with their prices and features, and then query that information elsewhere in different ways. I haven’t found a real use for this yet, but it’s intriguing and hints at some really interesting visualization and automation scenarios.

As for what this means for Dynalist: It might make sense to steal some of Roam’s features. (And there’s certainly no shame in that!) However, I think @Erica is right to be cautious about bolting on a bunch of me-too features onto a product that’s successful, in part, because of its simplicity. I like the idea of standing up a separate product that’s built from the ground up for the knowledge-management use case.


Thanks Herb. As @Erica has said, Dynalist is principally a hierarchical outliner and I think it’s the best around. It’s what I need for my daily business. Roam is more for writing, where it is more important to develop links between elements.

That said, the Sidebar seems a function that Dynalist could develop while keeping with its basic structure. I occasionally use the PowerPack3 for dual pane, but it is awkward and hard to control where the cursor rests.

1 Like

Great summary Herb. The features in Roam I would most love to see make their way into Dynalist would be:

Transclusion/“cloning”: The power of transclusion is in being able to arrange the same information in different views without duplicating it. I think this would expand Dynalist’s capabilities a lot, without affecting users who aren’t interested in using it. Bang-for-buck this is my most desired feature in discussion.

Daily Pages: I like this idea. It would be nice to have a shortcut that can take me to my “today page”. More generally, I’ve often wished I could have keyboard shortcuts to take me to a handful of selected bookmarks.

Attributes: Dynalist already has a kind of attribute: tags. They’re a bit like booleans or flags. I find them very useful. I would love to see more complex attributes e.g. #quantity=7. Then we could query the hierarchy with searches like: #orderfilled #quantity>5.

My $0.02. :slight_smile:


Yes. It is a grounding feature. Why not use the Inbox as the Daily Page?

I use something similar in Dynalist. Obviously it so not as good as if was implemented natively but I think is’s quite usable.

I use the calendar template and every day I add a#today tag to the current day. With a bookmared filter I can always jump to the current daily page with Ctrl+O.

The filter looks like this: parent:#today -is:competed

1 Like

Today I found the :diagram function in Roam Research is very useful.

I also like the idea of building a new product for the knowledge-management use case.


I’ve been using Roam for a while now. One thing I realized is that there is in fact only a single obstacle that stands in the way of me being able to replicate 99% of my entire workflowy there in Dynalist.

What is it? Fuzzy tag completion! I mean, it doesn’t even have to be genuinely fuzzy, just make it a substring search is enough. This really feels like a trivial change/addition to me. Yes, I know you’d then to figure out some optimal way to rank the matches (if I type #bc should #abcd be suggested before #bcde ?), but Dynalist already has fuzzy search for [[ links, so I imagine much of the code is already in place.

To me the entire idea of Roam is to make tons and tons and tons of inline connections between your notes. And since tags are the means by which these connections are made (links too, but in Roam they are the same thing), this means you are not doing Roam right if you don’t have a vast number of tags, if you don’t find yourself creating tags for the most seemingly trivial things, if you don’t have some sentences where all the non-grammatical words are tags. But precisely because you will have so many tags, you will often be able to recall only a (non-initial) part of their names. In Roam this is no problem, because the tag will show up in the completions, but in Dynalist this means a total interruption of one’s workflow. You were in the middle of a sentence, which for me is usually right in the middle of a thought, and you have to go look for that tag everywhere. When you go back, the thought may already be gone.


To me, inline tag completion in Dynalist works very well. I don’t have a problem with it. In fact, it seems better than Roam because ENTER completes the tag, while in Roam you have to select the full tag from the drop down.


Roam has lots of nice features, but no note section for bullets … just can’t even

(+ 10 other little things I couldn’t live without)


I second this. The tag completion works perfect. It seems that there is a logic to rank recent tags first and tags in the same document as well.

1 Like

Potentially people here are interested in a back linking feature of quick dynalist Quick Dynalist - The native Android app for Dynalist


I see a lot of mention that in Roam you don’t need to figure out where something goes

I also see mentions of “it’s just the ‘insert feature like backlinks’ and that’s all”

Neither is completely true.

Where does it go?

Many of your notes can, but don’t have to, start in the Daily Notes in Roam. You can do the same thing in Dynalist by starting in some kind of Inbox, Scratchpad, whatever you call it.

Yes, using links or tags in those notes in Roam also creates a page with that name, but no, that does’t mean your information is automatically structurally organized there: in and of itself that pages only collects all mentions of that word/words, listing them in 2 groups (linked and unlinked) in chronological order.

If you want an entry to have a more logic structure, you still have to navigate to that particular page and do your thing there. This is why most of us, when we annotate an article or a book, create a separate page for it and work from there instead of via the Daily Notes.

Information needs a specific place to live

Roam is just

Nope. Roam has many recognizable features, the outline aspect and the square bracket wiki style linking being the most prominent, but mashes and adds to that so many other things that it becomes something totally different.

Imagine being able to write a {{query}} in any place which will pull in whatever that query is looking for in your whole database.

Imagine typing any word followed by a double colon and it becomes an attribute for that note, or for the things under it, and being able to, automatically, generate a table for all notes containing this, that, or this and that attribute.

As you get deeper into Roam, Roam gets deeper.


Pro user of Dynalist, Evernote, TheBrain, and Roam – you don’t need to make a choice :slight_smile:

Also: not saying you should switch, or that one is better than the other. Simply pointing out some details