YAML Creator

by NameIsKyro
5
4
3
2
1
Score: 50/100

Description

Create, organize, and reuse YAML frontmatter properties in Obsidian with suggestions, pins, and templates.

Reviews

No reviews yet.

Stats

0
stars
27
downloads
0
forks
3
days
4
days
4
days
0
total PRs
0
open PRs
0
closed PRs
0
merged PRs
0
total issues
0
open issues
0
closed issues
1
commits

Latest Version

README file from

Github

YAML Creator

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.

Features

  • Add, rename, edit, reorder, and delete any top-level YAML property.
  • Edit text, numbers, booleans, dates, date-times, empty values, scalar lists, and nested YAML.
  • Add, remove, and reorder individual list values such as tags and aliases.
  • Reuse pinned, recently used, and vault-discovered categories and values.
  • Pin a suggestion with its star button, right-click, or touch long-press.
  • Create ordered templates and suggest them using vault-relative path patterns.
  • Detect frontmatter changes made after the popup opened before writing.
  • Use the same responsive interface on Obsidian desktop and mobile.
  • Keep vault data private: no accounts, network requests, advertising, or telemetry.

Terminology

  • A category is a top-level property key such as title, aliases, or tags.
  • A value is the content stored in a category. A list category can contain several values.
  • In the tags category, YAML Creator accepts #project in the interface and stores the Obsidian-compatible value project.

Usage

  1. Open a Markdown note.
  2. Select the braces icon in the ribbon, or run YAML Creator: Open editor from the command palette.
  3. Edit the current categories, select a suggestion, or merge a matching template.
  4. Select Apply to write the staged properties. Select Cancel to leave the note unchanged.

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.

Concurrent edits

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

Templates are managed under Settings → Community plugins → YAML Creator. Every template has:

  • A display name.
  • One or more vault-relative path globs.
  • An ordered YAML mapping of properties.

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.

Suggestions and settings

YAML Creator builds suggestions from Obsidian's metadata cache. It does not read every note body to create the index.

Suggestion order is:

  1. Pinned items.
  2. Recently applied items.
  3. Other vault items by frequency and name.

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.

Installation

Community plugins

After YAML Creator is accepted into the Obsidian community directory:

  1. Open Settings → Community plugins.
  2. Select Browse, search for YAML Creator, and install it.
  3. Enable the plugin.

Manual installation

  1. Download main.js, manifest.json, and styles.css from the release matching the version you want.
  2. Create <Vault>/.obsidian/plugins/yaml-creator/.
  3. Copy the three files into that folder.
  4. Reload Obsidian and enable YAML Creator under Community plugins.

Development

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.

Releasing

  1. Update version in package.json and minAppVersion in manifest.json if needed.
  2. Run npm version patch, npm version minor, or npm version major. The version script synchronizes manifest.json and versions.json.
  3. Push the commit and matching numeric tag, such as 1.0.1.
  4. The release workflow validates, builds, and uploads 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.

Data integrity and YAML formatting

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.

Privacy

YAML Creator operates entirely inside the active vault. It has:

  • No network access.
  • No accounts or external services.
  • No telemetry or analytics.
  • No advertisements or payments.
  • No access to files outside the vault.

Settings, template definitions, pins, and recent history are stored using Obsidian's plugin data API.

License

MIT © 2026 NameIsKyro