Robert Fleming101 downloadsEdit properties as readable, syntax-highlighted YAML frontmatter and collapse them when not needed.
Edit Obsidian Properties as readable, syntax-highlighted YAML frontmatter, then collapse the block when you want it out of the way.
YAML Properties is for people who want the portability and full expressiveness of raw YAML without giving up a clean writing view. It replaces the in-note Properties editor with an editable YAML block in Live Preview, shows a highlighted read-only block in Reading view, and leaves normal Source mode available.
Your notes remain plain Markdown. The plugin does not add proprietary metadata or modify YAML unless you edit it.
Keep useful metadata one click away without letting it dominate the note.
The bundled styling makes keys recede while strings, numbers, booleans, dates, links, lists, and nested values remain easy to scan.
Control the default collapse state, remember individual notes, hide frontmatter in Reading view, style Source mode, or switch to a compact layout.
Ctrl/Cmd+Enter.Use the command YAML Properties: Toggle frontmatter to toggle the active note from the command palette.
Themes and CSS snippets can override the plugin's public variables. For example:
body {
--yaml-properties-key: var(--text-muted);
--yaml-properties-string: #a8d8a8;
--yaml-properties-number: #e6b566;
--yaml-properties-boolean: #e06c75;
--yaml-properties-null: #c678dd;
--yaml-properties-anchor: #b8a1e3;
--yaml-properties-link: #61afef;
--yaml-properties-date: #d19a66;
--yaml-properties-tag: #c678dd;
--yaml-properties-comment: var(--text-faint);
--yaml-properties-punctuation: var(--text-faint);
--yaml-properties-background: var(--background-secondary);
--yaml-properties-background-active: var(--background-secondary-alt);
--yaml-properties-rail: var(--background-modifier-border);
--yaml-properties-rail-active: var(--interactive-accent);
}
Because these are ordinary CSS custom properties, users have final control without editing the plugin files.
Once accepted, install YAML Properties from Settings → Community plugins → Browse.
Copy main.js, manifest.json, and styles.css from a release into:
<vault>/.obsidian/plugins/yaml-properties/
Then reload Obsidian and enable YAML Properties under Community plugins.
Requires Node.js 18 or newer.
npm install
npm run dev
Run npm run build for a production build.
minAppVersion in manifest.json if compatibility has changed.npm version patch, npm version minor, or npm version major. The script updates manifest.json and versions.json; push the numeric tag without adding a v prefix.main.js, manifest.json, and styles.css to a GitHub Release.YAML Properties does not collect telemetry, make network requests, or send vault data anywhere.
If YAML Properties improves your workflow, you can support its continued development on Buy Me a Coffee.
YAML Properties was conceived, directed, and tested by Robert Fleming. Its implementation, refinement, documentation, and release engineering were completed in close collaboration with OpenAI Codex, powered by GPT-5.
Robert provided the vision and product decisions; AI assistance was invaluable in turning that vision into a polished community plugin. YAML Properties would not exist in its present form without that human–AI collaboration.