Repository navigation
Conversation
Adds a TokenExporter implementation emitting Spectrum tokens as a shadcn registry:theme item (cssVars.light/dark), reusing the existing pure-exporter plugin seam (sdk/plugins/PLUGINS.md) instead of a new abstraction. Settles the "one mode context per call" open question by re-resolving the second color scheme internally via cascade::resolve_dataset. - sdk/plugins/shadcn: new crate, ShadcnThemeExporter (format_id "shadcn-theme"), reuses design-data-dtcg's leaf resolution for CSS-ready values. - sdk/cli: register the exporter (exporters(), ExportFormat::ShadcnTheme, export --format shadcn-theme). - sdk/Cargo.toml: add plugins/shadcn to the workspace. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
🦋 Changeset detectedLatest commit: 5805318 The changes in this PR will be included in the next version bump. This PR includes changesets to release 1 package
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
Contributor
🎨 Token Changes ReportTokens Changed (0)Original Branch: This comment was automatically generated by the token diff tool. 🤖 |
Contributor
🧩 Component Schema Changes ReportNo component schema changes detected.This comment was automatically generated by the component schema diff tool. 🤖 |
Contributor
Run report for 5805318aTotal time: 3m 11s | Comparison time: 5m 24s | Estimated savings: 2m 12s (40.8% faster)
Changed files |
Sample artifacts from the validation spike, checked in so they have a stable link to share back to the thread this spike came from. Not built by CI, not consumed by any code. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
7 of 10 tasks
Use main's canonical component data; keep the PR exporter-only, refresh the action-button sample, derive catalog test expectations, trim the changeset. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Add --base-url to shadcn registry, a hosted theme item, the sdk:shadcn-registry moon task and a deploy-docs step publishing /r/. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
6 of 10 tasks
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Merge main and fold the hosting work into the registry PR. - Read the platform-merged catalog when a platform manifest is selected. - Put scheme-independent non-color vars in cssVars.theme (t19s). Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
GarthDB
marked this pull request as ready for review
October 21, 2026 22:03
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Add shadcn registry output for Spectrum: a light/dark
registry:themeexporter (export --format shadcn-theme) and ashadcn registrysubcommand that generates metadata-onlyregistry:componentitems from SDD component declarations, plus a top-levelregistry.jsonindex.shadcn registry --base-url URLwrites a flat layout for static hosting (folded in from #1536), and the generator reads the platform-merged catalog when a platform manifest is selected.The component generator supports one component or the full catalog, omits absent optional metadata, and retains implementation, option, and state details. It does not synthesize component source files or Code Connect mappings. This PR is exporter-only: canonical component data comes from
main, including its Spectrum 2 implementation metadata.Related Issue
Beads:
spectrum-design-data-78yg(update and merge),spectrum-design-data-t19s(non-color theme vars),spectrum-design-data-ajc7(hosting, folded in from #1536),spectrum-design-data-rj00(theme export),spectrum-design-data-3sn7(component export),spectrum-design-data-ja03(remove S1 component data from this PR). Follow-ups:spectrum-design-data-ajc7(static hosting andspectrum-themedependency),spectrum-design-data-4et4(verify CSS variable keys),spectrum-design-data-kpzv(failure-path tests),spectrum-design-data-hlac(implementation backfill),spectrum-design-data-f5s7(Code Connect).Motivation and Context
This makes both halves of the shadcn proof of concept reproducible from SDD data. The component registry uses the component declaration path rather than
TokenExporter, whose contract is limited to resolved token graph data. Component items referencespectrum-theme, which is generated separately; hosting is out of scope here.How Has This Been Tested?
moon run sdk:test: passed (1610 run, 1610 passed, 2 skipped), after mergingmain.@shadcn/registry@0.2.0transformCssVars(Tailwind v4): keys incssVars.themeare written literally to@theme inline; non-color keys inlight/darkbecame--k: var(--k).design-data shadcn registry --platform react-spectrum --component action-buttonadds the platform implementation row (cli_shadcn.rs).moon run sdk:lint: passed.moon run sdk:fmt-check: passed.moon run sdk:codegen-check: passed.moon run sdk:test-doc: passed (no doctests in the shadcn crate).pnpm install: no lockfile changes.moon run root:ai-check: passed.node tools/changeset-linter/src/cli.js check --fail-on-warnings: 1 valid, 0 warnings, 0 errors.sdk/plugins/shadcn/src/lib.rsandsdk/cli/tests/cli_shadcn.rs.npx shadcn@latest addin a scratch Tailwind v4 project.Screenshots (if appropriate):
N/A (CLI/JSON output).
Types of changes
Checklist: