obsidian-dataviewlisted
Install: claude install-skill lexbritvin/obsidian-skills-pack
# Dataview
Reference for authoring queries and scripts against the Obsidian **Dataview** plugin. Dataview indexes vault metadata (frontmatter, inline fields, tasks, links) and exposes it through four codeblock surfaces.
This file is the index. For deep coverage, consult the reference files (loaded only when relevant).
## What Dataview is
A read-only metadata index. It scans the vault, builds a typed in-memory database from frontmatter + inline fields + tasks + the Obsidian link graph, and renders results back into notes through codeblocks. It does **not** modify files (the one exception: clicking a checkbox in a rendered TASK block toggles the underlying source, but DataviewJS code itself cannot write).
## The four codeblock surfaces
| Surface | Fence | Use it for |
|---|---|---|
| **DQL query** | ` ```dataview ` | Static, declarative views. Safer, faster to render, no JS required. |
| **DataviewJS** | ` ```dataviewjs ` | Anything DQL can't express: control flow, multi-step computation, custom DOM, awaiting `dv.io`/`dv.query`, custom views via `dv.view`. |
| **Inline DQL** | `` `= expr` `` (default prefix `=`) | Single-value expression rendered inline mid-paragraph. |
| **Inline JS DQL** | `` `$= expr` `` (default prefix `$=`) | Same idea, full `dv` API available. |
JS surfaces are gated by the plugin's "Enable JavaScript Queries" toggle. Treat third-party DataviewJS as untrusted code — it has full vault read access.
## Decision tree — DQL vs DataviewJS
Pick **DQL**