The past and potential of Dataview with Michael Brener and Marcus Olsson
Based on Obsidian's video on YouTube. If you like this content, support the original creators by watching, liking and subscribing to their content.
Dataview adds metadata and a full query language to Obsidian vaults, enabling tables, lists, calendars, and custom views driven by note attributes.
Briefing
Dataview has become a metadata-and-query layer for Obsidian vaults, turning scattered Markdown notes into something closer to a searchable database—fast enough to render results in milliseconds. Michael Brenner, the plugin’s primary maintainer, frames Dataview as a “power user” step beyond links and tables: instead of forcing notes into pre-built structures, it lets users attach metadata (via YAML front matter or inline fields) and then generate lists, tables, calendars, and other custom views from arbitrary queries.
Brenner describes the core workflow as “defer the organization.” Users write notes with minimal overhead—often just a note plus tags and a few metadata fields—then later decide how to view and combine that information. Dataview effectively acts as a search engine or metadata engine across the entire vault, supporting a full query language that can filter and visualize notes by any attribute. Performance is a major selling point: query times are typically under 100 milliseconds on average, with render times often under 20 milliseconds, enabling near-instant feedback when exploring a vault.
Dataview’s influence extends beyond end users. Brenner says other plugin developers can call Dataview directly, running queries and receiving JavaScript or TypeScript results that plugins can render inside their own interfaces. He notes that multiple existing Obsidian plugins use Dataview’s API, including ones that integrate optionally and others that provide folder-based ways to use Dataview.
The plugin’s origins were modest. Dataview began as a roughly 50-line addition to Obsidian’s sample plugin—initially to list files matching a substring. Over time, the idea evolved into a small scripting language for listing notes by tag or folder, with the broader goal of letting people write notes first and query them later in any arrangement they want.
Brenner credits the Obsidian community for Dataview’s rapid growth. After he shared early screenshots in Discord in late February 2021, users and contributors expanded documentation, answered query questions, and helped refine how people learn the query language. He also emphasizes that Dataview is a long-term project he works on in cycles—periods of heavy development followed by pauses to ensure stability.
Looking ahead, Brenner highlights two major directions. First is data security and portability: because Dataview is a query layer rather than a primary storage format, he wants users to be able to export the generated tables and views as real Markdown, so the information remains accessible even if someone leaves Obsidian or stops using the plugin. Second is improving how users manage and discover large amounts of metadata—especially visualization, migrations, and editing workflows.
A recurring theme is lowering the barrier for non-programmers. Dataview queries are written in code blocks, and Brenner acknowledges that the query language has grown complex. He’s working on an alternative query syntax intended to support a bare-bones visual editor—potentially with a GUI that generates queries for common operations, while still allowing advanced users to switch to raw query mode. He also points to the value of examples and documentation, noting that learning Dataview often comes down to “programming by example.”
Cornell Notes
Dataview adds metadata and a query language to Obsidian vaults, letting users treat Markdown notes like a database. Instead of organizing notes upfront into fixed tables, users can write notes with tags and metadata, then generate lists, tables, calendars, and custom views later using arbitrary queries. Dataview is fast, with typical query times under 100 ms and render times under 20 ms. Plugin developers can also call Dataview’s API to run queries and use the results in their own plugins. Future priorities include portability/export of generated views to Markdown and making query building easier through a more GUI-friendly syntax and visual editor.
What makes Dataview more than “just search” inside Obsidian?
How does Dataview support the “defer organization” workflow?
Why does Dataview matter to plugin developers, not only end users?
Where did Dataview come from, and how did it evolve?
What are the two main roadmap directions Brenner highlights?
How is Brenner trying to make Dataview easier for non-programmers?
Review Questions
- How do YAML front matter and inline fields differ as ways to store metadata for Dataview queries?
- Describe the “defer organization” workflow and explain how Dataview changes the cost of organizing notes.
- What portability/export goal would address the risk of relying on an ephemeral plugin-generated view?
Key Points
- 1
Dataview adds metadata and a full query language to Obsidian vaults, enabling tables, lists, calendars, and custom views driven by note attributes.
- 2
Users can attach metadata via YAML front matter or inline fields (key:: value), then generate views later instead of organizing upfront.
- 3
Typical performance targets are under 100 ms for average query times and under 20 ms for average render times, supporting fast vault exploration.
- 4
Dataview is usable by other plugins through an API that can run queries and return JavaScript/TypeScript results for custom rendering.
- 5
Dataview’s origin was a small file-listing feature in the Obsidian sample plugin, later expanded into a queryable metadata system.
- 6
Roadmap priorities include portability (exporting generated views to real Markdown) and better support for managing large metadata sets.
- 7
A major usability goal is reducing the learning barrier by developing a GUI-friendly query syntax and a visual query builder for common operations.