New in 1.1 accessibility audit — a third verdict, from the live DOM

Dev Lab — ship a plugin that passes review. Three verdicts on one panel.

Dev Lab: ship a plugin that passes review — community review, official linter and accessibility on one panel

Three jobs, one panel

The things a plugin author does by hand before a release — or finds out about after.

Pre-flight review

Two verdicts, kept apart: would the community review pass it, and what would the official linter say. 35 of the linter's 40 rules mirrored, with its own severities and its brand and acronym lists.

#

Rule id on every line

Each finding names the rule, links its doc, and points at the file and line. No guessing what a reviewer meant.

Inventory

Commands with hotkeys and what they do, settings with types and descriptions, ribbons, views, processors, URI handlers, dialogs, stored keys — and a README snippet.

UI under every theme

Settings tab, views, ribbon icons and commands captured under every installed theme × dark and light, tiled one theme per row. Modals, menus, popovers and notices are framed tightly.

Knows what a command does

Reads each command from the code: opens a dialog, opens a view, needs an editor, writes files, uses the network. Safe ones are pre-ticked for capture; the rest are labelled.

Every plugin at once

Review every installed plugin into one summary, worst first, each row linking to its full note. Useful for your dependencies too.

Two verdicts, on purpose

A plugin can be listed and still fail the linter. Dev Lab never conflates the two.

Community review: would pass

The gate for the directory. Only rules verified to block a listing count here: the manifest words the review rejects, a malformed version, obfuscation, analytics SDKs. Calibrated against a dozen listed plugins until it matched their real scorecards.

Official linter: 2 errors · 5 warnings

eslint-plugin-obsidianmd, the guideline linter reviewers point people to. Errors are its enabled rules, warnings its warn-level rules. Not enforced by the directory — but it's what "please follow the guidelines" means.

The panel: live pre-flight with both verdicts, then commands and surfaces
The panel — live pre-flight, re-checked on demand.
An inventory note: the plugin's commands with what each one does, then its settings
The inventory — commands, settings, surfaces, and a README snippet.
The capture dialog
The capture dialog — themes, schemes, surfaces, commands.
A contact sheet: a plugin's dialog under one theme, dark and light

Workflow

Open the panel, pick the plugin you're working on, keep it open.

  1. Pre-flight Read it as you edit; re-check after a reload. Write the full note when it's clean.
  2. Inventory Before the README. Paste the snippet.
  3. Matrix Before the screenshots: settings tab, views and the safe commands under the themes your users have.
  4. Review all Now and then, to see which of your own dependencies would fail today's review.
It reads code as text. No type-checker, so five linter rules are out of reach and the rest are close approximations. When a rule is wrong, the issue template asks for the line and the code it points at.
Open panel
Review a pluginpre-flight for the community review
Review every installed pluginsummary note + one note each
Write a plugin inventorycommands, settings, surfaces
Capture a plugin's UI under every theme
Capture one screenshot now

Install

From the community list, or three files by hand.

  1. Community plugins Settings → Community plugins → Browse → search "Dev Lab".
  2. Manual Download main.js, styles.css and manifest.json from the latest release into .obsidian/plugins/plugin-lab/, then enable it.
Desktop only. Captures use Electron's capturePage. No network requests; everything stays in your vault.
.obsidian/
  plugins/
    plugin-lab/
      main.js
      styles.css
      manifest.json

Dev Lab/                 in your vault
  Thoughtbin/
    Review 2026-09-12 …md
    Inventory 2026-09-12 …md
    2026-09-12 211209/
      Matrix.md
      sheets/
  Summary 2026-09-12 …md

Changelog

Bare version numbers as tags; releases are built by the workflow.

1.0.12026-09-13
  • Renamed to Dev Lab — the directory rejects "Plugin" in a name. Same id, same commands.
1.0.02026-09-13
  • Pre-flight review with separate community-review and linter verdicts; 35 official rules mirrored.
  • Review every installed plugin into a linked summary.
  • Inventory of commands, settings and surfaces, with a README snippet.
  • UI captured under every installed theme × dark/light, including dialogs, menus and notices opened by commands.
  • Right-sidebar panel with live pre-flight.

More from Real-Fruit-Snacks

Tools for people who make things for Obsidian, and the themes made with them.