Obsidian has been one of my favorite tools for a while, but it couldn't match Notion in terms of databases. The launch of its new Bases feature changed all of that, and now I have next to no reason to keep Notion on my machine; Obsidian can do practically everything it can.
One thing to note: the Bases feature is still in testing and is only available to Catalyst members, but it should launch to all users soon. The Obsidian team did say that this particular feature might be in beta for slightly longer than usual to work out all the bugs.
Bases isn't a complete product yet, but it's already crazy useful, and the roadmap for updates looks promising. It might not be able to do everything Notion can do just yet, but from my first impressions, it won't be long.
Bases is the core plugin Obsidian has been missing
Adios, Dataview
Previously, Obsidian users could set up extensive, powerful databases through the use of a third-party plugin called Dataview. If you're familiar with Dataview and enjoy using it, you don't have to stop; Bases doesn't replace it. The thing is, Dataview requires a specific syntax that less tech-savvy users might not be comfortable with. Bases offers much of the same functionality as Dataview with a much simpler interface, and it requires next to no coding while still taking full advantage of Obsidian's powerful interlinking features.
The way it works is simple. When you create a base, Obsidian pulls all the notes in your current vault into the base and displays them as a list. If you think that doesn't sound particularly useful, you're right; it's a lot of information in one place that's hard to parse. The convenience comes from the ability to break the base down into multiple views differentiated by data types. To test out Bases, I created a new vault to use as a story bible for a book I'm working on — a way to easily reference all the difference characters, locations, etc. The first screenshot above is of that original view, but then I can divide it into other views. The second screenshot is all of the NPC characters.
It goes farther than that, though. By adjusting the Properties field, I can ask it to show the tags for each character note, their location, and so much more. I used YAML frontmatter for sorting purposes, but for large vaults with hundreds or even thousands of notes, Bases should automatically detect different tags and properties. I did encounter a few bumps where it didn't detect tags, but that is a known issue with the beta version; it seems particularly sensitive to the tag format, but Obsidian will likely sort that out before its final launch.
What this means, however, is that I can sort all of the notes in my vault to show only secondary characters, and then show what information I have tagged them with, what city the characters are in, and much more. It's an easy reference point. Of course, because it's Obsidian, I can jump to other linked data; if I forget exactly where the Hearth of the Stag is, I can go from the character database straight to the note with location information.
6 Obsidian features and plugins I regret not using earlier
Obsidian features I should’ve mastered sooner
Bases has its own syntax for comprehensive filtering
Sort by date, type, and much more
Since a Base includes every note in the vault, all of your information is available. There's no need to include a source like there is when working with SQL or Dataview. By default, every defining property for your notes is available for selection in the Properties tab. That means tags, links, file size, extensions, and more information is readily available for display in the database itself. If you want a view that isn't already defined, however, you can add a new property and define the exact formula for how it filters data.
This is done through Obsidian's functions. A full list is available on Obsidian's website for users that are interested. Fair warning: this part does involve coding, but it is relatively intuitive. Many of the functions are boolean in nature, which means they return either a true or false answer depending on what you ask. For instance, I can enter file.hasTag("alive") and the column will return with a checkbox showing whether or not the character file has that tag associated with it.
Multiple functions can be linked together to create extremely granular filters, but for the majority of users, I suspect the predefined fields will be enough to suit most tasks.
You can edit from within the database
Make corrections without breaking your flow
Another feature that makes Bases so powerful is that it allows you to edit notes from within the database itself. If I'm navigating a specific view and I notice something incorrect, I don't have to dive into the specific note to edit it; I can make changes on the fly. Let's go back to the example with the "alive" tag; if I take a look at that list and say, "Wait, that character is alive, but this one isn't," I don't need to open the two character notes in new windows. Selecting the empty space in the "tags" column gives me a list of all currently used tags to choose from, or I can type in a new tag. I can also click the "x" beside a tag and remove it from any entry.
It doesn't just affect the view. The changes in the database will be reflected in the note itself. For the purpose of this example, there aren't that many different notes to choose from, but if you have a vault with thousands of different notes? The ability to make a correction without navigating numerous folders to find the specific note you're looking for can save a lot of time.
Compared to Notion, Bases is still limited in some ways
It doesn't have the same view types
Although Bases does offer tremendous functionality in terms of sorting and filtering, you're still ultimately restricted to working within a table or a set of cards. That's one area where Notion still wins out; you can create boards, charts, lists, galleries, etc. That said, the Bases team promises that more views are on the way in the future. It's one of the first planned features.
With Notion, I can create a new task, and it will create a new section for that task inside the database. Bases doesn't yet support that function. While it is possible to edit existing notes in the database, you can't make new ones yet.
With Bases, Notion loses its strongest advantage over Obsidian
It is now just as easy to see large amounts of data
I have long preferred Obsidian to Notion, but I couldn't completely wipe Notion from my workflow. Its database functionality made me keep a small space active, even if I primarily did all of my note-taking inside another tool. Now that Obsidian can display information in a way that's easier on the eyes, I suspect I'll be opening Notion less and less. That holds doubly true when I have to create Notion databases from scratch and transfer data into it, whereas Obsidian can generate a database from all of my stored notes in a single vault — and then it can nest that database within another note if needed.
Bases is the most promising update in a long time
Obsidian is steadily improving, despite discussions that it has stagnated. The more I learn about the application, the more I find to love. With the addition of Bases, I intend to move as much of my workflow as possible into Obsidian to streamline everything and make my daily set-up that much easier (no more opening multiple apps and waiting for it all to load). As more of the Bases roadmap rolls out, I wouldn't be surprised to see even more Notion users making the leap.
Obsidian
- OS
- Windows, macOS, Linux, iOS, iPadOS, Android
- Individual pricing
- Free normally; $4/month for Obsidian Sync
