Daniel Kremen39 downloadsAdds one-click project filter buttons to the graph view so you never type path queries by hand.
One-click project filter buttons for the Obsidian graph view, so you never have
to type path: queries by hand.
The plugin injects a small button bar into every graph view: one button per
subfolder of a configurable root folder (default projects), plus a Curated
reset button and an All projects button. Click a button and the graph's
search is set for you.

-path:projects/) and an All projects button (path:<root>/).MutationObserver — no
polling.To build the project buttons, the plugin reads only the vault's file list
(file paths via getFiles) so it can find the subfolders under your projects
root. It never opens or reads file contents, makes no network requests, and
writes nothing outside its own plugin settings.
main.js, manifest.json, and styles.css from the
latest release.<vault>/.obsidian/plugins/graph-project-buttons/.Open Settings → Community plugins → Browse, search for Graph Project Buttons, install, and enable it.
Open any graph view. The bar appears in the top corner. Click a project button to filter the graph to that subfolder, Curated to apply your reset query, or the chevron to collapse the bar. The button matching the current search is highlighted.
| Setting | Default | Description |
|---|---|---|
| Projects root folder | projects |
Top-level folder whose subfolders become buttons. |
| Curated query | -path:projects/ |
Graph search applied by the curated reset button. |
| Curated button label | Curated |
Label shown on the curated reset button. |
| Show curated button | on | Show the curated reset button. |
| Show all-projects button | on | Show the All projects button. |
| Show icons | on | Show per-button lucide icons. |
| Bar position | Top left | Dock the bar to the top left or top right. |
| Start collapsed | off | Open the graph with only the toggle visible. |
npm install # install dev dependencies (zero runtime deps)
npm run dev # esbuild watch -> main.js
npm run build # type-check (tsc --noEmit) + production bundle
npm test # node:test unit tests for the pure helpers
npm run lint # eslint (eslint-plugin-obsidianmd + typescript-eslint)
To develop against a real vault, symlink or copy this folder into
<vault>/.obsidian/plugins/graph-project-buttons/ and run npm run dev.
See docs/architecture.md for how the injection,
MutationObserver, and search dispatch fit together, and
docs/publishing.md for the community-directory submission
steps. Contributor guidelines live in CONTRIBUTING.md.
If this plugin is useful to you, you can sponsor its development through GitHub Sponsors. Sponsorship is entirely optional — the plugin stays free and open source either way.
MIT © 2026 Daniel Kremen