Eva Chen80 downloadsDisplay and edit frontmatter properties in configurable panels inside notes.
Display and edit Obsidian frontmatter properties in configurable panels that stay inside the note's scrollable content.
Property Panels provides a visual settings editor for building compact metadata panels without writing JSON or CSS. Panels can be shared across the Vault or applied only to notes that match a folder, tag, or wikilink rule.
[!WARNING] AI development disclosure
Property Panels was created entirely by AI. Its architecture, source code, tests, build configuration, styles, and documentation were generated by AI rather than written by a human developer.
The codebase has not received a complete line-by-line human review. Automated linting, builds, and tests can detect some problems, but they do not replace manual code review, security review, or testing inside Obsidian. Before using this plugin with an important Vault, test it in a separate Vault, keep a current backup, and consider having the source reviewed by a qualified developer. The plugin is provided without a guarantee that it is free of bugs, security issues, or data-loss risks.

Property Panels requires Obsidian 1.13.0 or newer and supports desktop and mobile.
Once Property Panels is available in the Community plugins directory:
Use BRAT to install the current GitHub version for testing before or outside the Community plugins release cycle:
sakurastral/obsidian-property-panels or the full repository URL: https://github.com/sakurastral/obsidian-property-panels.BRAT can also check for updates to the installed testing version. See the BRAT quick guide for update and version-freezing options.
main.js, manifest.json, and styles.css from the latest release.<Vault>/.obsidian/plugins/property-panels/.New installations start without a predefined panel, so enabling the plugin does not add fields to existing notes until you configure one.
Each panel can be enabled, named, styled with a custom CSS class, made collapsible, or displayed without a title. Supported insertion positions are:
Panels are part of the note's scrollable content. Plain Source Mode display is optional and disabled by default; Live Preview is unaffected by that setting.
| Type | Purpose |
|---|---|
| Text / Textarea | Edit short or multi-line text with debounced saving. |
| Number / Toggle | Edit numeric and boolean frontmatter values. |
| Select / Multi-select | Choose values from a configured option source, with optional custom values. |
| Date / Datetime | Store local date or datetime strings without adding a timezone. |
| Progress / Rating | Edit numeric values with visual controls. |
| Readonly | Display a property without an input control. |
| Link | Display an HTTP(S), wikilink, or Markdown link; right-click to edit, copy, or clear its raw value. |
| Divider | Add a horizontal separator to a panel layout. |
Date fields store YYYY-MM-DD. Datetime fields use the local HTML datetime format, such as 2026-07-25T15:30.
Select and Multi-select fields can load values from:
| Source | Description |
|---|---|
| Static | A list entered directly in the field settings. |
| File property | Values from a frontmatter property in another note. |
| Markdown list | List items below an optional heading in another note. |
| Folder | Notes in a selected folder, optionally including subfolders and excluding specific files. |
Folder sources can store each note as its full path or basename, optionally formatted as a wikilink. Labels can come from a property in the matching note.
Rules match notes by folder, tag, or wikilink. Each rule can:
Panel layouts support one to four columns, three density levels, configurable gaps, and these label positions:
Each field can span 1–12 columns. The span is clamped to the active panel width, and narrow screens fall back to a single-column layout. Left, align end uses a shared label column based on the longest visible label and aligns each label with the first control line.
grip-vertical handle to reorder selected values.Arrow Up and Arrow Down change the active option, Enter selects it, and Escape closes the list.Backspace in an empty search field does not remove an existing chip.Home, End, Delete, and Backspace.Property Panels works without the Style Settings community plugin. When Style Settings is installed, controls are grouped into Panel, Field, Select, Rating and Progress, and Multi-select sections.
Available controls include panel backgrounds and borders, title and label colors, field-input text and backgrounds, borderless inputs, Select colors, chip colors, Rating and Progress appearance, field value typography, icon styles, and drag-grip styles.
Color presets use official Obsidian CSS variables whenever possible, so the panels follow the active theme. Custom light and dark colors remain available when a theme variable is not suitable.
FileManager.processFrontMatter() API.Keep a current backup of your Vault before testing any plugin that writes frontmatter.
If a panel cannot find its requested insertion point, Property Panels uses a nearby content fallback where possible. Enable Debug logging to inspect placement fallbacks in the developer console.
The Advanced JSON editor can copy the complete configuration, validate an edited configuration before saving, and restore defaults after confirmation.
Run Property Panels: Copy diagnostics from the command palette, or copy the same privacy-preserving report from the plugin settings.
npm install
npm run dev
Before submitting a change, run:
npm run lint
npm run build
npm test
npm run build performs TypeScript checking before bundling main.js.
Release tags use the exact plugin version without a v prefix. Each GitHub release must include these individual assets:
main.jsmanifest.jsonstyles.cssSee CHANGELOG.md for release history.
Report bugs or request features through GitHub Issues. When reporting a placement issue, include the Obsidian version, platform, theme, view mode, requested panel position, and the output of Copy diagnostics. Do not include private note content.
Property Panels is released under the MIT License.