Search...Search plugins and themes...
⌘K
Sign in
  • Get started
  • Download
  • Pricing
  • Enterprise
  • Account
  • Obsidian
  • Overview
  • Sync
  • Publish
  • Canvas
  • Mobile
  • Web Clipper
  • CLI
  • Learn
  • Help
  • Developers
  • Changelog
  • About
  • Roadmap
  • Blog
  • Resources
  • System status
  • License overview
  • Terms of service
  • Privacy policy
  • Security
  • Community
  • Plugins
  • Themes
  • Discord
  • Forum / 中文论坛
  • Merch store
  • Brand guidelines
Follow us
DiscordTwitterBlueskyThreadsMastodonYouTubeGitHub
© 2026 Obsidian

Frontmatter Input

Scott GrayScott Gray136 downloads

Use checkboxes and radio buttons in your markdown files to set frontmatter tags.

Add to Obsidian
  • Overview
  • Scorecard
  • Updates6

An Obsidian plugin to manage frontmatter tags through interactive nested checkbox and radio button lists — no more typing tags manually.

Example with nested selections


Overview

Define your tag structure once in a frontmatterinput code block using simple YAML. The plugin renders a clickable UI inside your note — check a box and the tag is added to your frontmatter; uncheck it and the tag (and all its children) are removed. Works great in templates.


Features

  • Checkboxes for multi-select tagging, radio buttons for exclusive single-selection
  • Nested hierarchies — child lists appear only when their parent is selected, building structured tags like activity/run/race/10k
  • Smart cleanup — unchecking a parent removes all its child tags automatically
  • Flexible layout — choose vertical or horizontal orientation per list
  • Duplicate prevention — only unique tags are written to frontmatter
  • Template-friendly — embed in note templates for consistent tagging across your vault

Installation

Option 1: Community Plugins (Pending Review)

The plugin has been submitted to the Obsidian community plugin list. Once approved it will be searchable directly in Settings > Community Plugins.

Option 2: BRAT (Recommended while pending)

BRAT (Beta Reviewers Auto-update Tester) is the standard Obsidian way to install plugins awaiting review.

  1. Install BRAT from Community Plugins if you haven't already
  2. Open Settings > BRAT > Add Beta Plugin
  3. Paste: scottgrayart/Frontmatter-input
  4. Enable the plugin under Settings > Community Plugins

BRAT will also notify you of future updates automatically.

Option 3: Manual Installation

  1. Go to the latest release
  2. Download main.js, manifest.json, and styles.css
  3. Create the folder .obsidian/plugins/frontmatter-input/ inside your vault
  4. Copy the three downloaded files into that folder
  5. Enable the plugin under Settings > Community Plugins

Usage

Add a frontmatterinput code block to any note or template. The plugin renders it as an interactive list in Reading view and Live Preview.

Minimal example

```frontmatterinput
btns:
- Option A: { tag: option-a }
- Option B: { tag: option-b }
- Option C: { tag: option-c }
```

Full example — workout log

```frontmatterinput
root: activity
orientation: horizontal
btns:
- Run:
    tag: run
    type: radio
    btns:
    - Regular: { tag: regular }
    - Long: { tag: long }
    - Race:
        tag: race
        type: radio
        orientation: horizontal
        btns:
        - 5k: { tag: 5k }
        - 10k: { tag: 10k }
        - Half Marathon: { tag: half }
- Walk: { tag: walk }
- Hike: { tag: hike }
```

Selecting Run > Race > 10k adds activity/run/race/10k to your frontmatter tags. Deselecting Run removes all three tags at once.

Single selection example


YAML Reference

Top-level options

Key Values Default Description
root any string (none) Prefix added to the start of every tag path
orientation vertical / horizontal vertical Layout direction for this list
type checkbox / radio checkbox Selection mode for this list
btns list (required) The items in this list

Button options

Each item under btns uses the label as its key. The value can be shorthand or expanded:

Shorthand (no nesting needed):

btns:
- My Label: { tag: my-label }

Expanded (use when adding nested lists, type, or orientation):

btns:
- My Label:
    tag: my-label
    type: radio
    orientation: horizontal
    btns:
    - Child A: { tag: child-a }
    - Child B: { tag: child-b }

Tag naming rules

Tag values must follow Obsidian's tag rules: lowercase letters, numbers, hyphens, underscores, and forward slashes only. No spaces. Use quotes around values containing special characters: tag: "my-tag".

YAML tips

  • Indentation uses 2 spaces (not tabs)
  • Comments start with #
  • The root attribute only applies to the top-level list, not nested lists

How tags are structured

The root value and each nested tag value are joined with / to form the final tag:

root: activity
  tag: run
    tag: race
      tag: 10k
→ activity/run/race/10k

If no root is set, the chain starts at the first selected tag.


Contributing

Bug reports and feature requests are welcome. Please open an issue with a description and, if relevant, the YAML block that reproduces the problem.


Support

If this plugin saves you time, consider supporting its development:


License

MIT — see LICENSE for details.

HealthExcellent
ReviewPassed
About
Manage frontmatter tags with interactive nested checkbox and radio lists. Define hierarchical tags as parent/child/grandchild entries and embed lists in templates or notes; selections automatically update frontmatter and reveal child lists when parents are selected. Prevent duplicate tags and auto-remove child tags when parents are unchecked, with optional vertical or horizontal layouts.
TagsProperties
Details
Current version
1.0.4
Last updated
2 months ago
Created
10 months ago
Updates
6 releases
Downloads
136
Compatible with
Obsidian 1.4.0+
Platforms
Desktop, Mobile
License
MIT
Report bugRequest featureReport plugin
Sponsor
Buy Me a Coffee
GitHub Sponsors
Author
Scott GrayScott Grayscottgrayart
GitHubscottgrayart
  1. Community
  2. Plugins
  3. Tags
  4. Frontmatter Input

Related plugins

Badges

Add inline badges/callouts to notes.

Tags Overview

An extended tags panel where tagged files can be easily viewed, filtered, and accessed.

Colored Bases Properties

Color property lists and formula properties in Bases.

Bases CMS

Manage your notes in bases like a content management system.

Extended Graph

Extends the features of the core Graph view, display images, manage states, remove links, change node shapes, and more.

Meta Bind

Make your notes interactive with inline input fields, metadata displays, and buttons.

Advanced Canvas

Supercharge your canvas experience. Create presentations, flowcharts and more.

TagFolder

Show tags as folder.

Update modified date

Automatically update a frontmatter modified date field when the file is modified.

MetaEdit

Manage your metadata.