Solenoid Properties

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

Description

Solenoid Properties plugin for Obsidian

Reviews

No reviews yet.

Stats

2
stars
389
downloads
0
forks
12
days
6
days
6
days
0
total PRs
0
open PRs
0
closed PRs
0
merged PRs
0
total issues
0
open issues
0
closed issues
18
commits

Latest Version

6 days ago

Changelog

NEW:

  • knap.md in-line rendering: add frontmatter property knap: true and Knap variables will render in-note.
  • Use the in-line Knap variables to embed Solenoid Properties object buttons throughout your notes! The popup editor makes changes directly to the stored frontmatter so any edits reflect across all instances.
  • Intelligent Cards view in the Frame pop-up editor. Great for mobile devices! Try it out with a dataset with many columns.
  • Cube object columns can now optionally adopt a type. This will override the types of List objects in that column.

README file from

Github

Solenoid Properties

An Obsidian plugin that adds Solenoid's objects to the available property types, wraps them in clickable buttons, and adds Solenoid's pop-up editor for easy entry + management of tabular data inside your frontmatter.

A note's properties shown as Solenoid chips: lists, a table, a frame and a cube

The plugin also ships a theme to make your Obsidian vault look and feel like Solenoid, in any of Solenoid's palettes and with the accent you pick. Enable it in the plugin settings.

An Obsidian vault wearing the Solenoid look

Property types

Type Description Chip
Numeric, String, Date, Complex and Boolean List A 1-D row of data. Same format as Obsidian's mixed List, but restricted to one data type. [N× List]
Num, Str, Date, Cx Bool Matrix A 2-D data set. One data type. [R×C Table]
Frame Analogous to pandas dataframe. A set of data columns, with headers. Each column can have one data type. [R×C Frame]
Cube Like the Frame, but can contain all other object types in its cells for nested data. [R×C×D Cube]

The pop-up editor open on a text list

Solenoid Property objects save as block-style YAML:

---
scores:
  - 92
  - 85
  - 77
grid:
  - - 1
    - 2
    - 3
  - - 4
    - 5
    - 6
orders:
  - item: Widget
    qty: 3
    due: 2026-10-01
  - item: Gasket
    qty: 12
    due: 2026-10-04
---

Solenoid importing the same note, each property on its own typed socket

Knap notes

Add knap: true to a note's properties and Reading view renders its body as a Knap template, filled from the note's own properties:

---
knap: true
qty: 3
orders:
  - item: Widget
    due: 2026-10-01
  - item: Gasket
    due: 2026-10-04
---
{{ qty }} of each, in {{ orders | length }} orders: {{ orders }}

{% for o in orders %}
- {{ o.item }}, due {{ o.due | date:"D MMM" }}
{% endfor %}

A bare {{ name }} on a List, Matrix, Frame or Cube property is that property's chip, and it opens the same editor as the properties panel. Any other use of the name reads the data. Live Preview renders it too, one tag or block at a time, and shows a piece's source when the cursor enters it. A tag with no matching property stays as typed, and a template error leaves the note as written, with the error at the top.

Disclosures

  • Clipboard: the pop-up editor's Copy, Copy as Markdown and copy-cell actions write to the system clipboard when you use them. The plugin never reads the clipboard.
  • No network access, no telemetry. The plugin's settings and a Frame's column types are kept in the plugin's own data.json.

Source

The source in src/ and obsidian-plugin/ is a snapshot exported from bubba8587/solenoid, where the plugin is developed, because the chips and editors are Solenoid's own components; source.json names the commit. npm ci && npm run build builds dist/ from it, and each release's files carry a GitHub build provenance attestation.

License

MIT. The bundle's third-party licenses (React, chrono-node, PapaParse, the Atkinson Hyperlegible fonts) are in THIRD-PARTY-LICENSES.txt.