NameIsKyro158 downloadsCreate, organize, and reuse YAML properties from a focused popup.
YAML Creator is a local-first Obsidian community plugin for creating, organizing, and reusing note properties without hand-editing frontmatter.
Open one focused popup to edit every property in the current Markdown note, add values discovered elsewhere in your vault, or merge a path-aware template. Nothing is written until you select Apply.
title, aliases, or tags.tags category, YAML Creator accepts #project in the interface and stores the Obsidian-compatible value project.Each category has controls to pin, move, or delete it. List values have the same controls and can be dragged into order. Advanced YAML accepts nested maps and lists and reports syntax errors inline.
The popup is locked to the note that was active when it opened. Before applying, YAML Creator compares that note's current frontmatter with the version originally loaded. If another editor or plugin changed it, the write stops and the popup offers Reload file.
Templates are managed under Settings → Community plugins → YAML Creator. Every template has:
Supported glob tokens are * for characters within one path segment, ** for any number of folders, and ? for one character.
Example template:
status: draft
tags:
- project
aliases: []
priority: 2
Example patterns:
Projects/**/*.md
Areas/Work/*.md
Daily/202?-*.md
Matching templates appear at the top of the editor, but they are never applied automatically. A merge adds missing properties, preserves existing scalar and nested values, and appends only unique list values.
YAML Creator builds suggestions from Obsidian's metadata cache. It does not read every note body to create the index.
Suggestion order is:
Existing categories and values are omitted. Only scalar values and scalar lists become value suggestions; nested structures remain editable through Advanced YAML.
Recent suggestions are enabled by default. Settings let you show 1–50 recent items, disable recent recording/display, clear history, clear pins, and manage templates. Disabling recents retains the existing history until it is explicitly cleared.
After YAML Creator is accepted into the Obsidian community directory:
main.js, manifest.json, and styles.css from the release matching the version you want.<Vault>/.obsidian/plugins/yaml-creator/.Requirements: a current Node.js LTS release and npm.
npm install
npm run dev
For local testing, place or clone the repository at <Vault>/.obsidian/plugins/yaml-creator/. The development process watches TypeScript sources and emits main.js at the repository root.
Run all automated checks:
npm run check
Individual commands are also available:
npm run typecheck
npm run lint
npm test
npm run build
main.js is generated and intentionally excluded from source control. The production build is minified. See DEVELOPMENT.md for the future roadmap and GITHUB_PUBLISHING.md for exact repository and release metadata.
version in package.json and minAppVersion in manifest.json if needed.npm version patch, npm version minor, or npm version major. The version script synchronizes manifest.json and versions.json.1.0.1.main.js, manifest.json, and styles.css to the GitHub release.For a manual release, the locally ignored releases/ folder contains fresh copies of those three files after packaging.
The release tag must exactly match the manifest version. For initial community submission, follow Obsidian's plugin submission guide and submit https://github.com/NameIsKyro/yaml-creator.
YAML Creator writes through Obsidian's FileManager.processFrontMatter API. It preserves property data, but Obsidian may normalize comments, quoting, anchors, aliases, and formatting when the frontmatter is saved. Back up important vaults and test new plugins in a separate vault first.
The plugin never edits multiple notes in version 1.0.0. Vault-wide and folder-wide operations are roadmap items only.
YAML Creator operates entirely inside the active vault. It has:
Settings, template definitions, pins, and recent history are stored using Obsidian's plugin data API.
MIT © 2026 NameIsKyro