app
Widget Registry
Public Made by Adomby adom
The reviewed registry of widgets renderable from plain markdown on any wiki page
← All Pull Requests
Register adom-3d #4
Closed opened by John Lauer 2026-10-11
Registers adom-3d (frontend): <adom-3d> from adom/component-widgets widgets/model-3d-widget.js, attrs src, poster, heading, caption. It is a click-to-load view of any GLB in the canonical Adom 3D Viewer. The widget itself, and how it was tested, are in the companion PR on adom/component-widgets; merge that one first so the script exists.
🤖 Generated with Claude Code
Diff Skip to comments (1)
@@ -1,134 +1,147 @@ [- {- "name": "adom-pinout",- "mode": "frontend",- "script": "https://wiki.adom.inc/adom/component-widgets/render/widgets/pinout-widget.js",- "element": "adom-pinout",- "attrs": [- "src",- "layout",- "heading"- ]- },- {- "name": "adom-chip-thumbnail",- "mode": "frontend",- "script": "https://wiki.adom.inc/adom/component-widgets/render/widgets/chip-thumbnail-widget.js",- "element": "adom-chip-thumbnail",- "attrs": [- "src",- "mpn",- "package"- ]- },- {- "name": "adom-molecule",- "mode": "frontend",- "script": "https://wiki.adom.inc/adom/component-widgets/render/widgets/molecule-widget.js",- "element": "adom-molecule",- "attrs": [- "src"- ]- },- {- "name": "adom-heatsink-via",- "mode": "frontend",- "script": "https://wiki.adom.inc/adom/component-widgets/render/widgets/heatsink-via-widget.js",- "element": "adom-heatsink-via",- "attrs": [- "src"- ]- },- {- "name": "adom-symbol-variants",- "mode": "frontend",- "script": "https://wiki.adom.inc/adom/adom-symbol/render/widget/adom-symbol-variants.js",- "element": "adom-symbol-variants",- "attrs": [- "src",- "mpn",- "layout",- "outline"- ]- },- {- "name": "adom-footprint-variants",- "mode": "frontend",- "script": "https://wiki.adom.inc/adom/component-widgets/render/widgets/footprint-variants-widget.js",- "element": "adom-footprint-variants",- "attrs": [- "src",- "variant",- "heading"- ]- },- {- "name": "adom-table",- "mode": "frontend",- "script": "https://wiki.adom.inc/adom/component-widgets/render/widgets/adom-table.js",- "element": "adom-table",- "attrs": [- "src",- "columns",- "heading",- "filter",- "facet",- "sort",- "dim",- "mark",- "colorby"- ]- },- {- "name": "adom-component-lod",- "mode": "frontend",- "script": "https://wiki.adom.inc/adom/component-widgets/render/widgets/chip-thumbnail-widget.js",- "element": "adom-component-lod",- "attrs": [- "src",- "mpn"- ]- },- {- "name": "adom-stock",- "mode": "frontend",- "script": "https://wiki.adom.inc/adom/widgets/render/widgets/stock-widget.js",- "element": "adom-stock",- "attrs": [- "src",- "heading"- ],- "height": "auto"- },- {- "name": "adom-verified",- "mode": "frontend",- "script": "https://wiki.adom.inc/adom/component-widgets/render/widgets/verified-widget.js",- "element": "adom-verified",- "attrs": [- "src",- "heading"- ]- },- {- "name": "adom-models",- "mode": "frontend",- "script": "https://wiki.adom.inc/adom/component-widgets/render/widgets/models-widget.js",- "element": "adom-models",- "attrs": [- "src",- "heading"- ]- },- {- "name": "adom-states",- "mode": "frontend",- "script": "https://wiki.adom.inc/adom/component-widgets/render/widgets/states-widget.js",- "element": "adom-states",- "attrs": [- "src",- "state",- "heading"- ]- }+ {+ "name": "adom-pinout",+ "mode": "frontend",+ "script": "https://wiki.adom.inc/adom/component-widgets/render/widgets/pinout-widget.js",+ "element": "adom-pinout",+ "attrs": [+ "src",+ "layout",+ "heading"+ ]+ },+ {+ "name": "adom-chip-thumbnail",+ "mode": "frontend",+ "script": "https://wiki.adom.inc/adom/component-widgets/render/widgets/chip-thumbnail-widget.js",+ "element": "adom-chip-thumbnail",+ "attrs": [+ "src",+ "mpn",+ "package"+ ]+ },+ {+ "name": "adom-molecule",+ "mode": "frontend",+ "script": "https://wiki.adom.inc/adom/component-widgets/render/widgets/molecule-widget.js",+ "element": "adom-molecule",+ "attrs": [+ "src"+ ]+ },+ {+ "name": "adom-heatsink-via",+ "mode": "frontend",+ "script": "https://wiki.adom.inc/adom/component-widgets/render/widgets/heatsink-via-widget.js",+ "element": "adom-heatsink-via",+ "attrs": [+ "src"+ ]+ },+ {+ "name": "adom-symbol-variants",+ "mode": "frontend",+ "script": "https://wiki.adom.inc/adom/adom-symbol/render/widget/adom-symbol-variants.js",+ "element": "adom-symbol-variants",+ "attrs": [+ "src",+ "mpn",+ "layout",+ "outline"+ ]+ },+ {+ "name": "adom-footprint-variants",+ "mode": "frontend",+ "script": "https://wiki.adom.inc/adom/component-widgets/render/widgets/footprint-variants-widget.js",+ "element": "adom-footprint-variants",+ "attrs": [+ "src",+ "variant",+ "heading"+ ]+ },+ {+ "name": "adom-table",+ "mode": "frontend",+ "script": "https://wiki.adom.inc/adom/component-widgets/render/widgets/adom-table.js",+ "element": "adom-table",+ "attrs": [+ "src",+ "columns",+ "heading",+ "filter",+ "facet",+ "sort",+ "dim",+ "mark",+ "colorby"+ ]+ },+ {+ "name": "adom-component-lod",+ "mode": "frontend",+ "script": "https://wiki.adom.inc/adom/component-widgets/render/widgets/chip-thumbnail-widget.js",+ "element": "adom-component-lod",+ "attrs": [+ "src",+ "mpn"+ ]+ },+ {+ "name": "adom-stock",+ "mode": "frontend",+ "script": "https://wiki.adom.inc/adom/widgets/render/widgets/stock-widget.js",+ "element": "adom-stock",+ "attrs": [+ "src",+ "heading"+ ],+ "height": "auto"+ },+ {+ "name": "adom-verified",+ "mode": "frontend",+ "script": "https://wiki.adom.inc/adom/component-widgets/render/widgets/verified-widget.js",+ "element": "adom-verified",+ "attrs": [+ "src",+ "heading"+ ]+ },+ {+ "name": "adom-models",+ "mode": "frontend",+ "script": "https://wiki.adom.inc/adom/component-widgets/render/widgets/models-widget.js",+ "element": "adom-models",+ "attrs": [+ "src",+ "heading"+ ]+ },+ {+ "name": "adom-states",+ "mode": "frontend",+ "script": "https://wiki.adom.inc/adom/component-widgets/render/widgets/states-widget.js",+ "element": "adom-states",+ "attrs": [+ "src",+ "state",+ "heading"+ ]+ },+ {+ "name": "adom-3d",+ "mode": "frontend",+ "script": "https://wiki.adom.inc/adom/component-widgets/render/widgets/model-3d-widget.js",+ "element": "adom-3d",+ "attrs": [+ "src",+ "poster",+ "heading",+ "caption"+ ]+ } ]+@@ -1,61 +1,63 @@⋯ 58 unchanged lines ⋯ | `::adom-stock{src="/api/pages/OWNER/SLUG/stock"}` | live stock and price at Mouser, DigiKey and LCSC for a hardware page, from the wiki's cached vendor lookups (adom/wiki#186); component pages show it in their sidebar by themselves; `heading` | | `::adom-verified{src="..."}` | the "verified by" trust mark: big green check, who verified the page and when, per-variant coverage, and the full verification log with evidence; turns amber when a verified file changes; takes the page's `verification.json` — loads from adom/component-widgets | | `::adom-models{src="..."}` | every 3D file on a component page as a card: thumbnail, STEP or GLB, etched or unmarked and where the part number sits, what makes it different from its siblings, what it was derived from, a download, and whether the page still serves the file that was described (checked against the file listing, nothing downloaded); previous versions fold away; takes the page's `models.json` (adom/models@1) — loads from adom/component-widgets |+| `::adom-3d{src="..."}` | any GLB in the canonical Adom 3D Viewer, click to load (nothing loads until the reader asks; it unloads offscreen and releases the WebGL context); `poster` `heading` `caption`; publish the GLB without Draco, the frame cannot reach the decoder CDN; loads from adom/component-widgets |+
Comments
Log in to comment.