Skip to content

catalog: add wireframe extension#2262

Open
TortoiseWolfe wants to merge 2 commits intogithub:mainfrom
TortoiseWolfe:feat/catalog-add-wireframe-extension
Open

catalog: add wireframe extension#2262
TortoiseWolfe wants to merge 2 commits intogithub:mainfrom
TortoiseWolfe:feat/catalog-add-wireframe-extension

Conversation

@TortoiseWolfe
Copy link
Copy Markdown

Description

Adds spec-kit-extension-wireframe v0.1.0 to extensions/catalog.community.json.

A visual feedback loop for Spec-Driven Development: SVG wireframe generation, review, and sign-off. Approved wireframes become spec constraints honored by /plan, /tasks, and /implement — no changes to core Spec Kit required.

Supersedes #1410, which I opened on 2025-12-31 before the extension system introduced in #2130. That PR proposed commands under templates/commands/, which is no longer the right home for third-party functionality. Closing #1410 after this lands.

Provides

  • 6 commands: speckit.wireframe.{generate, prep, review, inspect, screenshots, view}
  • 3 hooks: after_specify, before_plan, after_implement
  • Interactive browser viewer with dynamic manifest-driven navigation, keyboard shortcuts, zoom, focus mode
  • Light (tan) / dark (charcoal) SVG theme templates for frontend vs backend/architecture features

Links

Testing

  • Tested locally with `uv run specify --help` — catalog JSON parses cleanly
  • Ran existing tests with `uv sync && uv run pytest` — skipped (this PR only adds a single JSON entry; no code changes that tests would cover)
  • Tested with a sample project — extension installed via `specify extension add --dev`, all 6 commands registered, 3 hooks fire, end-to-end loop verified (generate → review → sign-off into spec.md → plan/tasks/implement honor the wireframe paths)

The entry's schema matches existing catalog entries (validated by diffing keys against `worktrees`), and the `download_url` release zip returns HTTP 200.

AI Disclosure

  • I did not use AI assistance for this contribution
  • I did use AI assistance (describe below)

Used Claude Code (Opus 4.7) to help author the extension itself (spec-kit-extension-wireframe) — porting a wireframe pipeline from a sibling project into a self-contained, portable extension and building the interactive viewer. This catalog PR adds a single JSON entry referencing the independently-maintained extension repo.

Adds https://github.com/TortoiseWolfe/spec-kit-extension-wireframe
(v0.1.0) to the community catalog. Provides a visual feedback loop
for spec-driven development: SVG wireframe generation, review, and
sign-off. Approved wireframes become spec constraints honored by
/plan, /tasks, and /implement.

Supersedes github#1410 — the old PR predated the extension system
introduced in github#2130 and proposed commands in templates/commands/,
which is no longer the right home for third-party commands.
Copy link
Copy Markdown
Collaborator

@mnriem mnriem left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please also add a row in the Community Extensions section in the main README (it is sorted alphabetically)

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds the community catalog entry for the wireframe extension (spec-kit-extension-wireframe v0.1.0) to make it discoverable via Spec Kit’s extension catalog.

Changes:

  • Add a new wireframe extension descriptor (metadata, URLs, requirements, provides counts, tags) to extensions/catalog.community.json.
Show a summary per file
File Description
extensions/catalog.community.json Adds the wireframe community catalog entry so it can be discovered via specify extension search/info.

Copilot's findings

Tip

Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

  • Files reviewed: 1/1 changed files
  • Comments generated: 2

Comment thread extensions/catalog.community.json Outdated
Comment on lines +2250 to +2253
"wireframe": {
"name": "Wireframe Visual Feedback Loop",
"id": "wireframe",
"description": "SVG wireframe generation, review, and sign-off for spec-driven development. Approved wireframes become spec constraints honored by /plan, /tasks, and /implement.",
Copy link

Copilot AI Apr 17, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This catalog appears to keep extension entries sorted lexicographically by extension id (e.g., "aide" → "agent-assign" → … and near the end "whatif" → "worktree" → "worktrees"). The new "wireframe" entry is currently placed after "worktrees", but alphabetically it should come before "worktree"/"worktrees". Please move this block to maintain the sorted order and reduce future merge conflicts/diff noise.

Copilot uses AI. Check for mistakes.
Comment thread extensions/catalog.community.json Outdated
"name": "Wireframe Visual Feedback Loop",
"id": "wireframe",
"description": "SVG wireframe generation, review, and sign-off for spec-driven development. Approved wireframes become spec constraints honored by /plan, /tasks, and /implement.",
"author": "TortoiseWolfe (turtlewolfe.com)",
Copy link

Copilot AI Apr 17, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The "author" field includes extra metadata ("TortoiseWolfe (turtlewolfe.com)"). The CLI author filter performs an exact string match (see src/specify_cli/extensions.py around the author filter in ExtensionCatalog.search), so users filtering by "TortoiseWolfe" would not match this entry. Suggest keeping "author" as just the handle/name (e.g., "TortoiseWolfe") and relying on "homepage"/"repository" for the URL.

Suggested change
"author": "TortoiseWolfe (turtlewolfe.com)",
"author": "TortoiseWolfe",

Copilot uses AI. Check for mistakes.
@mnriem
Copy link
Copy Markdown
Collaborator

mnriem commented Apr 17, 2026

One small note the extension system was introduced in #1551 And can you please address the Copilot feedback

Two changes per Copilot review:
- Move `wireframe` entry alphabetically between `whatif` and
  `worktree` (was appended after `worktrees`).
- Simplify `author` from "TortoiseWolfe (turtlewolfe.com)" to
  just "TortoiseWolfe" so the exact-match author filter in
  `ExtensionCatalog.search` finds the entry. Portfolio URL
  remains accessible via `homepage`/`repository`.

Thanks @Copilot, @mnriem for the review.
@TortoiseWolfe
Copy link
Copy Markdown
Author

Thanks for the review! Addressed both Copilot comments in ab9b2a3:

  • Moved the wireframe entry alphabetically between whatif and worktree
  • Simplified author to "TortoiseWolfe" (exact-match filter in ExtensionCatalog.search). Portfolio URL lives in homepage/repository.

@mnriem — thanks for the correction on the extension system intro. I had #2130 noted in the PR body but #1551 is the right landing PR. Let me know if you'd like me to edit the PR description to reflect that, or if landing-as-is with this comment on the record is fine.

Ready for another look.

@mnriem mnriem requested a review from Copilot April 17, 2026 19:24
TortoiseWolfe pushed a commit to TortoiseWolfe/TurtleWolfe that referenced this pull request Apr 17, 2026
Adds an entry to OTHER_PROJECTS pointing at the live demo at
https://tortoisewolfe.github.io/spec-kit-extension-wireframe/.
Ships a sample SVG as the card image — same one the live demo
renders, so the portfolio preview stays consistent with what
visitors land on after clicking through.

The extension provides a visual feedback loop for Spec-Driven
Development: generate SVG wireframes from specs; on sign-off
they become spec constraints honored by /plan, /tasks, and
/implement. Catalog PR pending at github/spec-kit#2262.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@mnriem
Copy link
Copy Markdown
Collaborator

mnriem commented Apr 17, 2026

Still need the row for the main README?

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot's findings

Tip

Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

  • Files reviewed: 1/1 changed files
  • Comments generated: 2

"wireframe": {
"name": "Wireframe Visual Feedback Loop",
"id": "wireframe",
"description": "SVG wireframe generation, review, and sign-off for spec-driven development. Approved wireframes become spec constraints honored by /plan, /tasks, and /implement.",
Copy link

Copilot AI Apr 17, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The description references "/plan", "/tasks", and "/implement", but the documented slash commands in this repo are "/speckit.plan", "/speckit.tasks", and "/speckit.implement" (see README.md and templates/plan-template.md). To avoid misleading catalog users, update the description to use the correct command names (or remove the slash-command references).

Suggested change
"description": "SVG wireframe generation, review, and sign-off for spec-driven development. Approved wireframes become spec constraints honored by /plan, /tasks, and /implement.",
"description": "SVG wireframe generation, review, and sign-off for spec-driven development. Approved wireframes become spec constraints honored by /speckit.plan, /speckit.tasks, and /speckit.implement.",

Copilot uses AI. Check for mistakes.
Comment on lines +2186 to +2188
"wireframe": {
"name": "Wireframe Visual Feedback Loop",
"id": "wireframe",
Copy link

Copilot AI Apr 17, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Per the extension publishing guide (extensions/EXTENSION-PUBLISHING-GUIDE.md), adding an entry to extensions/catalog.community.json should also include adding the extension to the Community Extensions table in the root README.md (alphabetical order). This PR currently only updates the catalog entry, so the README list will be out of sync.

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants