No description
Find a file
Thalik Bussacro e857b5f5f2 fix: layout do autocomplete escondia nome do arquivo
popup tinha display:flex horizontal, e quando o detail (path da
pasta parent) era longo o suficiente, o value (nome do arquivo)
era esmagado pra largura zero, dando a impressao de que o item
nao estava na lista.

troca pra empilhamento vertical: nome em cima, path embaixo em
fonte menor com ellipsis. ambos sempre visiveis.

bump: 0.5.1 -> 0.5.2
2026-04-29 00:24:58 -03:00
.github/workflows feat: graph filter builder v0.5.0 2026-04-28 23:59:25 -03:00
src fix: autocomplete file aceita arquivos nao-markdown 2026-04-29 00:19:08 -03:00
.editorconfig feat: graph filter builder v0.5.0 2026-04-28 23:59:25 -03:00
.gitignore feat: graph filter builder v0.5.0 2026-04-28 23:59:25 -03:00
.npmrc feat: graph filter builder v0.5.0 2026-04-28 23:59:25 -03:00
esbuild.config.mjs feat: graph filter builder v0.5.0 2026-04-28 23:59:25 -03:00
eslint.config.mts feat: graph filter builder v0.5.0 2026-04-28 23:59:25 -03:00
LICENSE feat: graph filter builder v0.5.0 2026-04-28 23:59:25 -03:00
manifest.json fix: layout do autocomplete escondia nome do arquivo 2026-04-29 00:24:58 -03:00
package-lock.json feat: graph filter builder v0.5.0 2026-04-28 23:59:25 -03:00
package.json fix: layout do autocomplete escondia nome do arquivo 2026-04-29 00:24:58 -03:00
README.md feat: graph filter builder v0.5.0 2026-04-28 23:59:25 -03:00
styles.css fix: layout do autocomplete escondia nome do arquivo 2026-04-29 00:24:58 -03:00
tsconfig.json feat: graph filter builder v0.5.0 2026-04-28 23:59:25 -03:00
version-bump.mjs feat: graph filter builder v0.5.0 2026-04-28 23:59:25 -03:00
versions.json fix: layout do autocomplete escondia nome do arquivo 2026-04-29 00:24:58 -03:00

Graph Filter Builder

A Filter Builder panel for Obsidian's graph view.

Build graph filters as structured Include/Exclude lines with type selection (tag, path, file) and autocomplete. Lines are combined with AND and written into the native filter input — so native bookmarks save them normally.

Why

The native graph filter is a single text input. Long expressions are hard to read and edit, and remembering the syntax (path:, tag:, -tag:, etc.) is friction. This plugin gives you a structured panel where each clause is its own line.

It does not replace the native filter — it generates the filter string and writes it into the existing input.

Usage

  1. Open the global graph view.
  2. A filter icon appears at the top-left of the graph.
  3. Click to expand the Filter Builder panel.
  4. Each line: [Include/Exclude] [type] [value] [trash]
  5. Pick a type (tag, path, file). The value field becomes editable, with autocomplete for that type.
  6. Toggle Include/Exclude per line.
  7. The native filter input updates live as you edit. Save bookmarks normally from Obsidian.

Reset

The reload icon in the panel header clears all lines.

Limitations

  • Global graph only — local graphs are not targeted.
  • No reverse parsing — opening the panel doesn't reconstruct lines from a filter that was typed manually into the native input. The panel always starts from a clean state.
  • Mobile not officially supported — the plugin relies on internal DOM structure of the graph view that may differ on mobile.
  • Internal API usage — the plugin queries internal DOM (.graph-controls, .suggestion-container) that aren't part of Obsidian's public API. A future Obsidian update could break it. Issues welcome.

Installation

Via BRAT (beta)

  1. Install the BRAT plugin in Obsidian.
  2. Add Thalikbussacro/graph-filter-builder as a beta plugin.
  3. Enable it.

Manual

  1. Download main.js, manifest.json, styles.css from the latest release.
  2. Copy them into <vault>/.obsidian/plugins/graph-filter-builder/.
  3. Enable the plugin in Settings → Community plugins.

Development

npm install
npm run dev    # watch mode
npm run build  # production build

Build output goes to the project root: main.js. Copy that, plus manifest.json and styles.css, into your test vault under .obsidian/plugins/graph-filter-builder/.

License

MIT — see LICENSE.