Skip to content

Dashboard: builtin-widget SDK + starter/template gallery #101141

Description

@100yenadmin

Make building widgets a documented, contributable surface.

Part of the Modular Dashboard roadmap — see the tracker #101136. Builds on Wave 1 (#101093; PRs #101094 / #101097 / #101098).

Problem

Adding a builtin widget or a custom widget today has no documented pattern or starter — contributors and agents have to reverse-engineer an existing renderer each time. That's fine for the Wave 1 authors, but it doesn't scale to a community of contributors building widgets independently.

What this adds

  • A documented builtin contract: what a builtin renderer receives and must return.
  • A template renderX(widget, value, ctx) => TemplateResult starter for new builtins.
  • Custom-widget HTML scaffolds: notes, calculator, chess.
  • A short authoring guide tying the two paths (builtin vs. custom) together.

How it'd be built

Document the contract implied by BUILTIN_WIDGET_RENDERERS and getBuiltinRenderer in ui/src/lib/dashboard/widgets/index.ts, using renderStatCard in ui/src/lib/dashboard/widgets/stat-card.ts as the representative example. Adding a new builtin kind also means extending BUILTIN_KIND_PATTERN in extensions/dashboard/src/schema.ts — the guide should call out that both places need to change together, since that's the easiest step to miss.

References

Tier 0 — multipliers.

Metadata

Metadata

Assignees

No one assigned

    Labels

    P3Low-priority cleanup, docs, polish, ergonomics, or speculative work.clawsweeper:needs-maintainer-reviewClawSweeper marked this issue as needing maintainer review before automation.clawsweeper:needs-product-decisionClawSweeper marked this issue as needing a product or behavior decision.clawsweeper:needs-security-reviewClawSweeper marked this issue as needing security-sensitive review.clawsweeper:no-new-fix-prClawSweeper does not recommend queueing a new automated fix PR for this issue.impact:otherThis issue has meaningful maintainer-visible impact outside the owned taxonomy.impact:securitySecurity boundary, credential, authz, sandbox, or sensitive-data risk.issue-rating: 🌊 off-meta tidepoolIssue quality rating does not apply to this item.staleMarked as stale due to inactivity

    Type

    No type

    Fields

    Priority

    None yet

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions