HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
blacksmithgu
obsidian-dataview
TypeScript2021–2025
blacksmithgu / obsidian-dataview

obsidian-dataview

A data index and query language over Markdown files, for https://obsidian.md/.

18Distinct people
19Mentions
0Explicit recommenders
9.4KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

A data index and query language over Markdown files, for https://obsidian.md/.

GitHub

Where it is used

No documented product use was verified in the last source check.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

Mentioned in the same Hacker News threads. That is not proof they are substitutes.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 3:56:07 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year19 dated mentions

Observed mentions: 2021-07-12 07:09:41 UTC to 2025-08-20 18:08:49 UTC.

024682021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments20212022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 8 mentions; 1 submissions, 7 comments2023-01-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 4 mentions; 0 submissions, 4 comments20232024-01-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 3 mentions; 0 submissions, 3 comments2025-01-01 00:00:00 UTC to 2026-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2025

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC202
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC817
20232023-01-01 00:00:00 UTC2024-01-01 00:00:00 UTC404
20242024-01-01 00:00:00 UTC2025-01-01 00:00:00 UTC303
20252025-01-01 00:00:00 UTC2026-01-01 00:00:00 UTC202

What Hacker News says

19 sources
Bases seem like a great alternative to Dataview [0] but better supported and with simpler syntax than literally writing inline JavaScript for more complicated stuff. You can also export your table as CVS and they plan to properly support Obsidian Publish which was never supported in Dataview. [0]: https://github.com/blacksmithgu/obsidian-dataview, I was a big fan but it seems the author has stopped actively developing it at some point which is a shame.
In Obsidian Bases
No, Obsidian is quite more powerful. Obsidian has built-in support for markdown, images, PDFs, canvas (via JSON Canvas which they developed and open sourced https://obsidian.md/canvas), and others. For databases, you can add fields/properties both in the markdown frontmatter or in the text and query it via very popular plugins: https://github.com/blacksmithgu/obsidian-dataview There are tons of community plugins that support all kind of stuff: tasks, kanban, LLM/Copilot, graph analysis of links, charts. It can also be extended in JS, both writing your own plugins or via a few plugins that allow limited JS support. --- Obsidian is actually quite good as a NoCode prototyping platform for personal apps :-) E.g. CRUD: - Use templates, via Templater: to define the content of your data - Use links and tags to define relations and connections -
Read the rest
Use dataview or graphs for views - There are even plugins to define buttons and the actions they perform, if you need commands
In Siyuan: Privacy-first, self-hosted personal knowledge management software
I'm also using Obsidian daily notes, with all un-actioned items shown on a page with a dataview API[^1]: ```dataview TASK FROM "VaultName/Journal" WHERE !completed ``` Since at least 2012 I've also been using a text file format from http://todotxt.org/ and more recently I wrote a program that takes a crontab-like list[^2] to pre-generate entries on a daily, by-day-name (every Sunday for example), and I also pull in a list of holidays from gov.uk, so they are also populated. [^1]: https://github.com/blacksmithgu/obsidian-dataview [^2]: https://github.com/alister/alister-tools/blob/main/.todo.cro...
In My productivity app is a never-ending .txt file (2022)
> Joplin is using md to. The way it's handled can make the difference in control. > by separating that in their DB, it's a big NO for me since it's a closed silo. Joplin is using a popular open database with a healthy community and good tooling. It's as open as markdown. Maybe not for you, when you lack the knowledge, but markdown is similar closed for anyone not understanding filesystems and editors. > This: https://github.com/blacksmithgu/obsidian-dataview works so wonderful for me Good for you, but that is very low level in terms of data-handling. Dataview is really just an elaborated search, there is no good level of interaction. Datacore, the next project of the Dataview is supposed to bring this, but it's not even usable yet AFAIK. Coincidental, the Obsidian-devs are also working on that front, but nothing is finished yet. > https:/
Read the rest
/github.com/denolehov/obsidian-git and b) easy to fix since it's a text file. Gosh! That's useless when the app itself is not working. And even worse if you are not realizing the errors early. > Aha. I don't think so. Which authority says that? My own experience. I've tested enough plugins over the years to know their dark corners. > And even if It's like that, my markdown files would survive everything The thing is, technically you are not even having proper markdown, but a fork with some extensions of Obsidian. So some features of your parts might break when switching away from Obsidian. And the reason for all this is also because markdown is lacking definitions for what obsidian-people are doing with it. Coincidentally, this seems also one of the reasons why Joplin is using a database. > And gosh, this is a good thing! Not if they all suck. > Installing multiple task plugins shows that something is "broke" on the user side. Sure, because the plugins are lacking features, its the users fault... Maybe some users have just very different levels of requirements from you.
In A structured note-taking app for personal use
> Not really. Obsidian has its shares of problems too, and most of them originate from using Markdown. Aha. Which problems do you mean? > Markdown is a freeform text-format, and works very well for writing text, but it really sucks for data and structured content. Joplin is using md to. And if Joplin does a good job on "data" and "structured content" (whatever you mean by that) by separating that in their DB, it's a big NO for me since it's a closed silo. This: https://github.com/blacksmithgu/obsidian-dataview works so wonderful for me, and it never breaks anything in my simple md files. > Most plugins and features in that area are very brittle and overspecialized, working only well enough in their specific use case. Aha. I don't think so. Which authority says that? And even if It's like that, my markdown files would survive everything, s
Read the rest
ince they are a) in git. https://github.com/denolehov/obsidian-git and b) easy to fix since it's a text file. Gosh! > And gosh, Obsidian has really a huge amount of plugins for data-handling. And gosh, this is a good thing! > At some point, it was so bad that there were multiple competing task-plugins which broke each other just because they had different formatting for dates. Installing multiple task plugins shows that something is "broke" on the user side. It's not the fault of Markdown or Obsidian. Just have a look on: https://github.com/ivan-lednev/obsidian-day-planner but you dont need a fancy task plugin like this, if you know your way around https://github.com/blacksmithgu/obsidian-dataview or https://github.com/obsidian-tasks-group/obsidian-tasks Since the Ecosystem around Obsidian and pure Markdown, most of the time I stay in my browser https://github.com/deathau/markdownload and nvim https://github.com/epwalsh/obsidian.nvim
In A structured note-taking app for personal use
Have you heard of Obsidian? It's a note-taking app build on locally stored markdown files with bidirectional linking and a great ecosystem of third party plugins. One of the most popular plugins is https://github.com/blacksmithgu/obsidian-dataview which lets you treat your notes as databases and query them to form tables. The creator has been working on its successor, Datacore https://github.com/blacksmithgu/datacore for a while - Datacore might come close to what you're looking for, its goals include WYSIWYG views and live editing inside tables.
In Show HN: I made an open-source Notion-style WYSYWIG editor
I primarily use folders and the dataview plugin [1] for 1). E.g. when I am managing a course, I have a structure like so: https://www.dropbox.com/s/5mbcuu2pyy7eb3o/folder-structure.p... I usually have a top-level note for a course, here the "Computational Surgineering.md". In there, I use the dataview plugin to simply create a dynamic table of all entries in the meetings subfolder: https://www.dropbox.com/s/wk8jjldlohg6bf3/dataview.png?dl=0 Another option I use is nested tags[2], like #cs/meeting for the above use-case. As for 2) I don't really use the global graph that much. It looks quite cool, but I primarily just look at a local graph with a maximum depth of 2-3 to quickly hop around. [1] https://github.com/blacksmithgu/obsidian-dataview [2] https://help.obsidian.md/Editing+and+formatting/Tags Edit: Formatting is horrible on HN. I pos
Read the rest
ted screenshots instead.
In People who use Notion to plan their whole lives
You can achieve a lot of this with Obsidian and some plugins, like obsidian-dataview and Templater. Might have some missing bits still, but if you're comfortable writing JavaScript (or not, honestly) it's very simple to make your own plugin to fix that, it sounds like a pretty minimal plugin after you have dataview. https://github.com/blacksmithgu/obsidian-dataview https://github.com/SilentVoid13/Templater https://github.com/obsidianmd/obsidian-sample-plugin
In Potluck: Dynamic documents as personal software
Obsidian: https://obsidian.md/ And for managing generating more easily exportable formats for things that need stuff like CSV/Spreadsheets: https://github.com/blacksmithgu/obsidian-dataview For structured entry of text ("forms") so that you can reliably track stuff using DataView, I recommend the Note From Templates plugin: https://github.com/mo-seph/obsidian-note-from-template Simple, no servers, (unless you want sync, and you can use theirs or your own)
In What do you use for knowledge management?
Happy to share some of what's been working for me. Some of this is stuff I'm actively using, some of it hasn't quite made it into the "day to day use" yet, but I've been experimenting with. (Random personal advice: Never let your note taking tools feel like using them is work, that's the first step towards not keeping notes!) - For fans of "outline workflows" Outliner is excellent. A whole bunch of outline/indented text movement and manipulation commands: https://github.com/vslinko/obsidian-outliner - For easily refactoring notes that are getting too large you want to have Note Refactor. It gives you tools to easily take blocks of text and quickly cut them out into new notes. Its not magic out of the box, but its a powerful tool you can use when building workflows with other plugins. https://github.com/lynchjames/note-refactor-obsidian -
Read the rest
Local images is another good one, working with online content can get messy when you copy notes and then want to be able to work any where you have Obsidian synched. I've got it on my Laptop, two desktops, phone and tablet... I want to carry as much of my related content with me so having an easy way to convert remote images to local copies is a big productivity boost when making notes about content from the internet. https://github.com/aleksey-rezvov/obsidian-local-images - For analysing the content for some useful stats there's: https://github.com/SkepticMystic/graph-analysis but this is for a relatively specific sort of analysis. - More general and flexible analysis and graph visualisations are available from the combination of https://github.com/zsviczian/excalibrain , https://github.com/blacksmithgu/obsidian-dataview and https://github.com/zsviczian/obsidian-excalidraw-plugin ... in short query your notes and note metadata like its a database, build reports and data visualisations, and then excalibrain is a whole thing built on top of that power. - Dynamic embeds of outside content are available from https://github.com/dhamaniasad/obsidian-rich-links and https://github.com/Seraphli/obsidian-link-embed depending on the style and use you like. While there is a built in functionality to preview the links to other notes when you hover over them https://help.obsidian.md/Plugins/Page+preview which has a demo here https://youtu.be/dmnVml_jbsQ?t=222 - And a real force multiplier is adding https://github.com/Taitava/obsidian-shellcommands to your setup. It lets you run scripts and prompt for information and really invest time in procedural automation without having to build your own javascript plugins. So you can setup your system so that when you use the refactor to cut out a new note, the automations will trigger, ask you to give the note a new heading, tags, and you have a little script that checks last modified time of the folder tree of text files, and looks at the folder of the last modified time and asks you in that popup if you want to move the new note to the folder the note you cut it from is located in. Or anything else you can imagine using outside automation and scripting tools on your plain text markdown files. These are just a start and if you haven't already browsed the plugins at https://obsidian.md/plugins I wholeheartedly recommend it, people are adding new cool things pretty often and other plugins add new functionality that makes them worth checking out if they were previously not something that you found interesting. I do a read through of the plugin list probably at least once every month or two just to see what's new, and more often if I'm experimenting with changes to my workflow.
In Obsidian 1.0 – Personal knowledge base app
@luxpir mentioned Obsidian in another comment [1] and it might be what you are looking for, in particular with a community plugin called Obsidian Dataview [2]. Dataview uses JavaScript as a query language and can query the Obsidian "vault" and create different views. Another tool to look at is Logseq [3], which is essentially an outliner (supports both MarkDown and Org syntax), but supports a rather simplistic TODO management system. The benefit here is exactly what you describe—as you work in Logseq, you can create Todos, thereby connecting the task to the related source and any context that surrounds the todo. Furthermore, Logseq also allows for queries [4], allowing you to query your "knowledge graph", which you can embed in other pages. Both Obsidian and Logseq store your files locally, so they can be easily version-controlled (In fac
Read the rest
In Plaintext Productivity

Showing the 15 most recent of 19 sources. Enable JavaScript to search and browse every indexed mention.

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.