base-themes 0.1.2 → 0.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +25 -0
- package/CODE_OF_CONDUCT.md +22 -0
- package/CONTRIBUTING.md +98 -0
- package/LICENSE +21 -0
- package/README.md +316 -3
- package/RELEASE.md +80 -0
- package/SECURITY.md +49 -0
- package/bin/base-themes.mjs +143 -0
- package/dist/base-themes.css +1 -1
- package/dist/base-themes.js +857 -302
- package/dist/llms-full.txt +288 -0
- package/dist/llms.txt +79 -0
- package/dist/types/blocks/AuthCard.d.ts +2 -0
- package/dist/types/blocks/CommandPaletteBlock.d.ts +2 -0
- package/dist/types/blocks/DashboardShell.d.ts +2 -0
- package/dist/types/blocks/DataTableBlock.d.ts +2 -0
- package/dist/types/blocks/PricingPanel.d.ts +2 -0
- package/dist/types/blocks/SettingsForm.d.ts +2 -0
- package/dist/types/blocks/TeamActivityFeed.d.ts +2 -0
- package/dist/types/blocks/ThemeShowcaseCard.d.ts +2 -0
- package/dist/types/blocks/index.d.ts +8 -0
- package/dist/types/components/ui/Input.d.ts +3 -0
- package/dist/types/components/ui/index.d.ts +1 -1
- package/dist/types/lib.d.ts +1 -0
- package/docs/adoption-dashboard.md +149 -0
- package/docs/analytics-setup.md +145 -0
- package/docs/community-gallery-proposal.md +64 -0
- package/docs/community-proof-telemetry.md +47 -0
- package/docs/contributor-issue-seeds.md +240 -0
- package/docs/registry-access-telemetry.md +87 -0
- package/docs/release-announcement-kit.md +229 -0
- package/docs/search-console-setup.md +111 -0
- package/docs/theme-token-contract.md +113 -0
- package/examples/dashboard/README.md +24 -0
- package/examples/dashboard/index.html +12 -0
- package/examples/dashboard/package-lock.json +1212 -0
- package/examples/dashboard/package.json +24 -0
- package/examples/dashboard/src/App.tsx +115 -0
- package/examples/dashboard/src/main.tsx +11 -0
- package/examples/dashboard/src/styles.css +129 -0
- package/examples/dashboard/src/vite-env.d.ts +4 -0
- package/examples/dashboard/tsconfig.app.json +23 -0
- package/examples/dashboard/tsconfig.json +7 -0
- package/examples/dashboard/tsconfig.node.json +15 -0
- package/examples/dashboard/vite.config.ts +6 -0
- package/examples/next/README.md +29 -0
- package/examples/next/app/base-themes-demo.tsx +70 -0
- package/examples/next/app/layout.tsx +16 -0
- package/examples/next/app/page.tsx +9 -0
- package/examples/next/app/styles.css +106 -0
- package/examples/next/next-env.d.ts +6 -0
- package/examples/next/next.config.ts +5 -0
- package/examples/next/package-lock.json +1199 -0
- package/examples/next/package.json +27 -0
- package/examples/next/tsconfig.json +36 -0
- package/examples/registry-copy/README.md +73 -0
- package/examples/registry-copy/plan-copy.mjs +130 -0
- package/examples/theme-customization/README.md +26 -0
- package/examples/theme-customization/index.html +12 -0
- package/examples/theme-customization/package-lock.json +1212 -0
- package/examples/theme-customization/package.json +24 -0
- package/examples/theme-customization/src/App.tsx +138 -0
- package/examples/theme-customization/src/main.tsx +11 -0
- package/examples/theme-customization/src/styles.css +138 -0
- package/examples/theme-customization/src/vite-env.d.ts +4 -0
- package/examples/theme-customization/tsconfig.app.json +23 -0
- package/examples/theme-customization/tsconfig.json +7 -0
- package/examples/theme-customization/tsconfig.node.json +15 -0
- package/examples/theme-customization/vite.config.ts +6 -0
- package/examples/vite/README.md +32 -0
- package/examples/vite/index.html +12 -0
- package/examples/vite/package-lock.json +1200 -0
- package/examples/vite/package.json +24 -0
- package/examples/vite/src/App.tsx +101 -0
- package/examples/vite/src/main.tsx +11 -0
- package/examples/vite/src/styles.css +125 -0
- package/examples/vite/src/vite-env.d.ts +4 -0
- package/examples/vite/tsconfig.app.json +23 -0
- package/examples/vite/tsconfig.json +7 -0
- package/examples/vite/tsconfig.node.json +15 -0
- package/examples/vite/vite.config.ts +6 -0
- package/llms-full.txt +288 -0
- package/llms.txt +79 -0
- package/package.json +157 -14
- package/registry/items/accordion.json +101 -0
- package/registry/items/alert-dialog.json +107 -0
- package/registry/items/autocomplete.json +106 -0
- package/registry/items/avatar.json +101 -0
- package/registry/items/block-auth-card.json +105 -0
- package/registry/items/block-command-palette.json +99 -0
- package/registry/items/block-dashboard-shell.json +101 -0
- package/registry/items/block-data-table.json +99 -0
- package/registry/items/block-pricing-panel.json +99 -0
- package/registry/items/block-settings-form.json +107 -0
- package/registry/items/block-team-activity-feed.json +99 -0
- package/registry/items/block-theme-showcase-card.json +99 -0
- package/registry/items/button.json +102 -0
- package/registry/items/checkbox-group.json +106 -0
- package/registry/items/checkbox.json +102 -0
- package/registry/items/collapsible.json +101 -0
- package/registry/items/combobox.json +101 -0
- package/registry/items/context-menu.json +106 -0
- package/registry/items/csp-provider.json +96 -0
- package/registry/items/dialog.json +102 -0
- package/registry/items/direction-provider.json +101 -0
- package/registry/items/drawer.json +101 -0
- package/registry/items/field.json +101 -0
- package/registry/items/fieldset.json +101 -0
- package/registry/items/form.json +101 -0
- package/registry/items/input.json +102 -0
- package/registry/items/menu.json +101 -0
- package/registry/items/menubar.json +106 -0
- package/registry/items/meter.json +101 -0
- package/registry/items/navigation-menu.json +101 -0
- package/registry/items/number-field.json +101 -0
- package/registry/items/otp-field.json +101 -0
- package/registry/items/popover.json +102 -0
- package/registry/items/preview-card.json +101 -0
- package/registry/items/progress.json +101 -0
- package/registry/items/radio-group.json +102 -0
- package/registry/items/radio.json +101 -0
- package/registry/items/scroll-area.json +101 -0
- package/registry/items/select.json +102 -0
- package/registry/items/separator.json +101 -0
- package/registry/items/slider.json +102 -0
- package/registry/items/switch.json +102 -0
- package/registry/items/tabs.json +101 -0
- package/registry/items/theme-bauhaus.json +107 -0
- package/registry/items/theme-bento.json +107 -0
- package/registry/items/theme-calm.json +107 -0
- package/registry/items/theme-cyberpunk.json +108 -0
- package/registry/items/theme-data-dense.json +107 -0
- package/registry/items/theme-editorial.json +107 -0
- package/registry/items/theme-enterprise.json +108 -0
- package/registry/items/theme-fluent.json +107 -0
- package/registry/items/theme-glass.json +107 -0
- package/registry/items/theme-linear.json +107 -0
- package/registry/items/theme-luxury.json +107 -0
- package/registry/items/theme-material.json +107 -0
- package/registry/items/theme-minimal.json +107 -0
- package/registry/items/theme-mono.json +107 -0
- package/registry/items/theme-neo-brutalism.json +107 -0
- package/registry/items/theme-playful.json +107 -0
- package/registry/items/theme-retro.json +107 -0
- package/registry/items/theme-shadcn.json +107 -0
- package/registry/items/theme-soft-ui.json +107 -0
- package/registry/items/theme-terminal.json +107 -0
- package/registry/items/toast.json +106 -0
- package/registry/items/toggle-group.json +101 -0
- package/registry/items/toggle.json +101 -0
- package/registry/items/toolbar.json +101 -0
- package/registry/items/tooltip.json +102 -0
- package/registry/registry.json +564 -49
- package/registry/shadcn-registry.json +415 -0
- package/research/telemetry-fixtures/analytics-events.jsonl +9 -0
- package/research/telemetry-fixtures/bundle-report.json +44 -0
- package/research/telemetry-fixtures/community-proof.csv +5 -0
- package/research/telemetry-fixtures/registry-access.jsonl +10 -0
- package/research/telemetry-fixtures/search-console-export.csv +4 -0
- package/scripts/registry-plan.mjs +434 -0
- package/scripts/render-launch-actions.mjs +405 -0
- package/scripts/render-launch-status.mjs +373 -0
- package/scripts/render-release-announcement.mjs +329 -0
- package/scripts/verify-launch-readiness.mjs +415 -0
- package/scripts/verify-telemetry-fixtures.mjs +85 -0
- package/scripts/verify-telemetry-report.mjs +89 -0
- package/skills/base-themes/SKILL.md +151 -47
- package/src/blocks/AuthCard.tsx +29 -0
- package/src/blocks/Blocks.css +182 -0
- package/src/blocks/CommandPaletteBlock.tsx +32 -0
- package/src/blocks/DashboardShell.tsx +36 -0
- package/src/blocks/DataTableBlock.tsx +44 -0
- package/src/blocks/PricingPanel.tsx +28 -0
- package/src/blocks/SettingsForm.tsx +37 -0
- package/src/blocks/TeamActivityFeed.tsx +38 -0
- package/src/blocks/ThemeShowcaseCard.tsx +32 -0
- package/src/blocks/index.ts +8 -0
- package/src/components/ui/Accordion.css +42 -0
- package/src/components/ui/Accordion.tsx +41 -0
- package/src/components/ui/AlertDialog.css +40 -0
- package/src/components/ui/AlertDialog.tsx +52 -0
- package/src/components/ui/Autocomplete.css +3 -0
- package/src/components/ui/Autocomplete.tsx +50 -0
- package/src/components/ui/Avatar.css +45 -0
- package/src/components/ui/Avatar.tsx +36 -0
- package/src/components/ui/Button.css +79 -0
- package/src/components/ui/Button.tsx +20 -0
- package/src/components/ui/Checkbox.css +37 -0
- package/src/components/ui/Checkbox.tsx +32 -0
- package/src/components/ui/CheckboxGroup.tsx +21 -0
- package/src/components/ui/Collapsible.css +34 -0
- package/src/components/ui/Collapsible.tsx +29 -0
- package/src/components/ui/Combobox.css +75 -0
- package/src/components/ui/Combobox.tsx +53 -0
- package/src/components/ui/ContextMenu.css +9 -0
- package/src/components/ui/ContextMenu.tsx +47 -0
- package/src/components/ui/CspProvider.tsx +10 -0
- package/src/components/ui/Dialog.css +41 -0
- package/src/components/ui/Dialog.tsx +45 -0
- package/src/components/ui/DirectionProvider.tsx +17 -0
- package/src/components/ui/Drawer.css +77 -0
- package/src/components/ui/Drawer.tsx +56 -0
- package/src/components/ui/Field.css +19 -0
- package/src/components/ui/Field.tsx +24 -0
- package/src/components/ui/Fieldset.css +16 -0
- package/src/components/ui/Fieldset.tsx +19 -0
- package/src/components/ui/Form.css +5 -0
- package/src/components/ui/Form.tsx +12 -0
- package/src/components/ui/Input.css +50 -0
- package/src/components/ui/Input.tsx +62 -0
- package/src/components/ui/Menu.css +59 -0
- package/src/components/ui/Menu.tsx +50 -0
- package/src/components/ui/Menubar.css +26 -0
- package/src/components/ui/Menubar.tsx +42 -0
- package/src/components/ui/Meter.css +45 -0
- package/src/components/ui/Meter.tsx +37 -0
- package/src/components/ui/NavigationMenu.css +103 -0
- package/src/components/ui/NavigationMenu.tsx +64 -0
- package/src/components/ui/NumberField.css +38 -0
- package/src/components/ui/NumberField.tsx +28 -0
- package/src/components/ui/OtpField.css +28 -0
- package/src/components/ui/OtpField.tsx +24 -0
- package/src/components/ui/Popover.css +25 -0
- package/src/components/ui/Popover.tsx +37 -0
- package/src/components/ui/PreviewCard.css +33 -0
- package/src/components/ui/PreviewCard.tsx +43 -0
- package/src/components/ui/Progress.css +33 -0
- package/src/components/ui/Progress.tsx +28 -0
- package/src/components/ui/Radio.tsx +22 -0
- package/src/components/ui/RadioGroup.css +42 -0
- package/src/components/ui/RadioGroup.tsx +29 -0
- package/src/components/ui/ScrollArea.css +42 -0
- package/src/components/ui/ScrollArea.tsx +22 -0
- package/src/components/ui/Select.css +86 -0
- package/src/components/ui/Select.tsx +39 -0
- package/src/components/ui/Separator.css +14 -0
- package/src/components/ui/Separator.tsx +12 -0
- package/src/components/ui/Slider.css +39 -0
- package/src/components/ui/Slider.tsx +21 -0
- package/src/components/ui/Switch.css +45 -0
- package/src/components/ui/Switch.tsx +29 -0
- package/src/components/ui/Tabs.css +72 -0
- package/src/components/ui/Tabs.tsx +44 -0
- package/src/components/ui/Toast.css +75 -0
- package/src/components/ui/Toast.tsx +48 -0
- package/src/components/ui/Toggle.tsx +12 -0
- package/src/components/ui/ToggleGroup.css +35 -0
- package/src/components/ui/ToggleGroup.tsx +30 -0
- package/src/components/ui/Toolbar.css +60 -0
- package/src/components/ui/Toolbar.tsx +36 -0
- package/src/components/ui/Tooltip.css +14 -0
- package/src/components/ui/Tooltip.tsx +31 -0
- package/src/components/ui/index.ts +83 -0
- package/src/components/ui/useDirection.ts +1 -0
- package/src/components/ui/useToastManager.ts +11 -0
- package/src/docs/blockMeta.json +66 -0
- package/src/docs/componentMeta.json +322 -0
- package/src/docs/staticPageMeta.json +143 -0
- package/src/docs/themeMeta.json +22 -0
- package/src/styles/tokenContract.json +61 -0
- package/workers/analytics-receiver.mjs +170 -0
- package/wrangler.analytics.jsonc +12 -0
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
|
3
|
+
"name": "block-team-activity-feed",
|
|
4
|
+
"type": "registry:block",
|
|
5
|
+
"title": "Team Activity Feed",
|
|
6
|
+
"description": "Recent workspace activity feed with team avatars and collaboration status.",
|
|
7
|
+
"dependencies": [
|
|
8
|
+
"@base-ui/react",
|
|
9
|
+
"clsx",
|
|
10
|
+
"lucide-react"
|
|
11
|
+
],
|
|
12
|
+
"files": [
|
|
13
|
+
{
|
|
14
|
+
"path": "src/blocks/TeamActivityFeed.tsx",
|
|
15
|
+
"type": "registry:block",
|
|
16
|
+
"target": "@/blocks/TeamActivityFeed.tsx"
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"path": "src/blocks/Blocks.css",
|
|
20
|
+
"type": "registry:file",
|
|
21
|
+
"target": "@/blocks/Blocks.css"
|
|
22
|
+
}
|
|
23
|
+
],
|
|
24
|
+
"categories": [
|
|
25
|
+
"block",
|
|
26
|
+
"collaboration",
|
|
27
|
+
"product-ui"
|
|
28
|
+
],
|
|
29
|
+
"meta": {
|
|
30
|
+
"baseThemes": {
|
|
31
|
+
"source": "package-and-source-copy",
|
|
32
|
+
"registryName": "team-activity-feed",
|
|
33
|
+
"docsRoute": "/blocks/team-activity-feed",
|
|
34
|
+
"components": [
|
|
35
|
+
"avatar",
|
|
36
|
+
"button"
|
|
37
|
+
],
|
|
38
|
+
"supportsStyles": [
|
|
39
|
+
"bento",
|
|
40
|
+
"shadcn",
|
|
41
|
+
"neo-brutalism",
|
|
42
|
+
"minimal",
|
|
43
|
+
"enterprise",
|
|
44
|
+
"linear",
|
|
45
|
+
"glass",
|
|
46
|
+
"terminal",
|
|
47
|
+
"material",
|
|
48
|
+
"fluent",
|
|
49
|
+
"retro",
|
|
50
|
+
"cyberpunk",
|
|
51
|
+
"editorial",
|
|
52
|
+
"calm",
|
|
53
|
+
"data-dense",
|
|
54
|
+
"playful",
|
|
55
|
+
"luxury",
|
|
56
|
+
"soft-ui",
|
|
57
|
+
"bauhaus",
|
|
58
|
+
"mono"
|
|
59
|
+
]
|
|
60
|
+
},
|
|
61
|
+
"agent": {
|
|
62
|
+
"summary": "Use Team Activity Feed as a ready product UI starting point for collaboration screens.",
|
|
63
|
+
"whenToUse": [
|
|
64
|
+
"Collaboration",
|
|
65
|
+
"Product screen composition",
|
|
66
|
+
"Block-level copy plan"
|
|
67
|
+
],
|
|
68
|
+
"registryItems": [
|
|
69
|
+
"/registry/items/block-team-activity-feed.json",
|
|
70
|
+
"/registry/items/avatar.json",
|
|
71
|
+
"/registry/items/button.json"
|
|
72
|
+
],
|
|
73
|
+
"packageInstall": [
|
|
74
|
+
"npm install base-themes @base-ui/react react react-dom",
|
|
75
|
+
"import base-themes/styles.css once",
|
|
76
|
+
"import { TeamActivityFeed } from 'base-themes'"
|
|
77
|
+
],
|
|
78
|
+
"sourceCopy": [
|
|
79
|
+
"npx base-themes plan block:team-activity-feed",
|
|
80
|
+
"fetch /registry/items/block-team-activity-feed.json",
|
|
81
|
+
"copy block files",
|
|
82
|
+
"copy required component files from registryItems",
|
|
83
|
+
"copy every registry.style.files entry once"
|
|
84
|
+
],
|
|
85
|
+
"installPlan": [
|
|
86
|
+
"npx base-themes plan block:team-activity-feed",
|
|
87
|
+
"fetch /registry/items/block-team-activity-feed.json",
|
|
88
|
+
"copy block files and component registryItems",
|
|
89
|
+
"import base-themes/styles.css once"
|
|
90
|
+
],
|
|
91
|
+
"verify": [
|
|
92
|
+
"npm run registry:check",
|
|
93
|
+
"npm run tokens:check",
|
|
94
|
+
"npm run lint",
|
|
95
|
+
"npm run build"
|
|
96
|
+
]
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
|
3
|
+
"name": "block-theme-showcase-card",
|
|
4
|
+
"type": "registry:block",
|
|
5
|
+
"title": "Theme Showcase Card",
|
|
6
|
+
"description": "Theme value card with token swatches, tabs, and a theme CTA.",
|
|
7
|
+
"dependencies": [
|
|
8
|
+
"@base-ui/react",
|
|
9
|
+
"clsx",
|
|
10
|
+
"lucide-react"
|
|
11
|
+
],
|
|
12
|
+
"files": [
|
|
13
|
+
{
|
|
14
|
+
"path": "src/blocks/ThemeShowcaseCard.tsx",
|
|
15
|
+
"type": "registry:block",
|
|
16
|
+
"target": "@/blocks/ThemeShowcaseCard.tsx"
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"path": "src/blocks/Blocks.css",
|
|
20
|
+
"type": "registry:file",
|
|
21
|
+
"target": "@/blocks/Blocks.css"
|
|
22
|
+
}
|
|
23
|
+
],
|
|
24
|
+
"categories": [
|
|
25
|
+
"block",
|
|
26
|
+
"marketing",
|
|
27
|
+
"product-ui"
|
|
28
|
+
],
|
|
29
|
+
"meta": {
|
|
30
|
+
"baseThemes": {
|
|
31
|
+
"source": "package-and-source-copy",
|
|
32
|
+
"registryName": "theme-showcase-card",
|
|
33
|
+
"docsRoute": "/blocks/theme-showcase-card",
|
|
34
|
+
"components": [
|
|
35
|
+
"button",
|
|
36
|
+
"tabs"
|
|
37
|
+
],
|
|
38
|
+
"supportsStyles": [
|
|
39
|
+
"bento",
|
|
40
|
+
"shadcn",
|
|
41
|
+
"neo-brutalism",
|
|
42
|
+
"minimal",
|
|
43
|
+
"enterprise",
|
|
44
|
+
"linear",
|
|
45
|
+
"glass",
|
|
46
|
+
"terminal",
|
|
47
|
+
"material",
|
|
48
|
+
"fluent",
|
|
49
|
+
"retro",
|
|
50
|
+
"cyberpunk",
|
|
51
|
+
"editorial",
|
|
52
|
+
"calm",
|
|
53
|
+
"data-dense",
|
|
54
|
+
"playful",
|
|
55
|
+
"luxury",
|
|
56
|
+
"soft-ui",
|
|
57
|
+
"bauhaus",
|
|
58
|
+
"mono"
|
|
59
|
+
]
|
|
60
|
+
},
|
|
61
|
+
"agent": {
|
|
62
|
+
"summary": "Use Theme Showcase Card as a ready product UI starting point for marketing screens.",
|
|
63
|
+
"whenToUse": [
|
|
64
|
+
"Marketing",
|
|
65
|
+
"Product screen composition",
|
|
66
|
+
"Block-level copy plan"
|
|
67
|
+
],
|
|
68
|
+
"registryItems": [
|
|
69
|
+
"/registry/items/block-theme-showcase-card.json",
|
|
70
|
+
"/registry/items/button.json",
|
|
71
|
+
"/registry/items/tabs.json"
|
|
72
|
+
],
|
|
73
|
+
"packageInstall": [
|
|
74
|
+
"npm install base-themes @base-ui/react react react-dom",
|
|
75
|
+
"import base-themes/styles.css once",
|
|
76
|
+
"import { ThemeShowcaseCard } from 'base-themes'"
|
|
77
|
+
],
|
|
78
|
+
"sourceCopy": [
|
|
79
|
+
"npx base-themes plan block:theme-showcase-card",
|
|
80
|
+
"fetch /registry/items/block-theme-showcase-card.json",
|
|
81
|
+
"copy block files",
|
|
82
|
+
"copy required component files from registryItems",
|
|
83
|
+
"copy every registry.style.files entry once"
|
|
84
|
+
],
|
|
85
|
+
"installPlan": [
|
|
86
|
+
"npx base-themes plan block:theme-showcase-card",
|
|
87
|
+
"fetch /registry/items/block-theme-showcase-card.json",
|
|
88
|
+
"copy block files and component registryItems",
|
|
89
|
+
"import base-themes/styles.css once"
|
|
90
|
+
],
|
|
91
|
+
"verify": [
|
|
92
|
+
"npm run registry:check",
|
|
93
|
+
"npm run tokens:check",
|
|
94
|
+
"npm run lint",
|
|
95
|
+
"npm run build"
|
|
96
|
+
]
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
|
3
|
+
"name": "button",
|
|
4
|
+
"type": "registry:ui",
|
|
5
|
+
"title": "Button",
|
|
6
|
+
"description": "An action primitive with semantic variants for primary commands, quiet actions, icons, and destructive-looking accents.",
|
|
7
|
+
"dependencies": [
|
|
8
|
+
"@base-ui/react",
|
|
9
|
+
"clsx",
|
|
10
|
+
"lucide-react"
|
|
11
|
+
],
|
|
12
|
+
"files": [
|
|
13
|
+
{
|
|
14
|
+
"path": "src/components/ui/Button.tsx",
|
|
15
|
+
"type": "registry:ui",
|
|
16
|
+
"target": "@/components/ui/Button.tsx"
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"path": "src/components/ui/Button.css",
|
|
20
|
+
"type": "registry:file",
|
|
21
|
+
"target": "@/components/ui/Button.css"
|
|
22
|
+
}
|
|
23
|
+
],
|
|
24
|
+
"categories": [
|
|
25
|
+
"base-ui",
|
|
26
|
+
"component",
|
|
27
|
+
"inputs",
|
|
28
|
+
"form"
|
|
29
|
+
],
|
|
30
|
+
"meta": {
|
|
31
|
+
"baseThemes": {
|
|
32
|
+
"source": "package-and-source-copy",
|
|
33
|
+
"docsRoute": "/components/button",
|
|
34
|
+
"supportsStyles": [
|
|
35
|
+
"bento",
|
|
36
|
+
"shadcn",
|
|
37
|
+
"neo-brutalism",
|
|
38
|
+
"minimal",
|
|
39
|
+
"enterprise",
|
|
40
|
+
"linear",
|
|
41
|
+
"glass",
|
|
42
|
+
"terminal",
|
|
43
|
+
"material",
|
|
44
|
+
"fluent",
|
|
45
|
+
"retro",
|
|
46
|
+
"cyberpunk",
|
|
47
|
+
"editorial",
|
|
48
|
+
"calm",
|
|
49
|
+
"data-dense",
|
|
50
|
+
"playful",
|
|
51
|
+
"luxury",
|
|
52
|
+
"soft-ui",
|
|
53
|
+
"bauhaus",
|
|
54
|
+
"mono"
|
|
55
|
+
],
|
|
56
|
+
"styleContract": [
|
|
57
|
+
"data-style",
|
|
58
|
+
"data-theme",
|
|
59
|
+
"src/index.css",
|
|
60
|
+
"src/styles/tokens.css",
|
|
61
|
+
"src/styles/themes.css",
|
|
62
|
+
"src/styles/shadcn.css",
|
|
63
|
+
"src/styles/neo-brutalism.css",
|
|
64
|
+
"src/styles/cyberpunk.css",
|
|
65
|
+
"src/styles/terminal.css",
|
|
66
|
+
"src/styles/material.css",
|
|
67
|
+
"src/styles/glass.css"
|
|
68
|
+
]
|
|
69
|
+
},
|
|
70
|
+
"agent": {
|
|
71
|
+
"summary": "Use Button when a React UI needs an action primitive with semantic variants for primary commands, quiet actions, icons, and destructive-looking accents.",
|
|
72
|
+
"whenToUse": [
|
|
73
|
+
"Inputs",
|
|
74
|
+
"Base UI wrapper",
|
|
75
|
+
"CSS token theme support"
|
|
76
|
+
],
|
|
77
|
+
"packageInstall": [
|
|
78
|
+
"npm install base-themes @base-ui/react react react-dom",
|
|
79
|
+
"import base-themes/styles.css once",
|
|
80
|
+
"import { Button } from 'base-themes'"
|
|
81
|
+
],
|
|
82
|
+
"sourceCopy": [
|
|
83
|
+
"fetch /registry/items/button.json",
|
|
84
|
+
"copy every files[].path to files[].target",
|
|
85
|
+
"copy every registry.style.files entry once",
|
|
86
|
+
"install dependencies from dependencies[]"
|
|
87
|
+
],
|
|
88
|
+
"installPlan": [
|
|
89
|
+
"npm install base-themes @base-ui/react react react-dom",
|
|
90
|
+
"import base-themes/styles.css once",
|
|
91
|
+
"import { Button } from 'base-themes'",
|
|
92
|
+
"or fetch /registry/items/button.json for source-copy"
|
|
93
|
+
],
|
|
94
|
+
"verify": [
|
|
95
|
+
"npm run registry:check",
|
|
96
|
+
"npm run tokens:check",
|
|
97
|
+
"npm run lint",
|
|
98
|
+
"npm run build"
|
|
99
|
+
]
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
|
3
|
+
"name": "checkbox-group",
|
|
4
|
+
"type": "registry:ui",
|
|
5
|
+
"title": "Checkbox Group",
|
|
6
|
+
"description": "A shared state container for related checkboxes.",
|
|
7
|
+
"dependencies": [
|
|
8
|
+
"@base-ui/react",
|
|
9
|
+
"clsx",
|
|
10
|
+
"lucide-react"
|
|
11
|
+
],
|
|
12
|
+
"files": [
|
|
13
|
+
{
|
|
14
|
+
"path": "src/components/ui/CheckboxGroup.tsx",
|
|
15
|
+
"type": "registry:ui",
|
|
16
|
+
"target": "@/components/ui/CheckboxGroup.tsx"
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"path": "src/components/ui/Checkbox.tsx",
|
|
20
|
+
"type": "registry:ui",
|
|
21
|
+
"target": "@/components/ui/Checkbox.tsx"
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"path": "src/components/ui/Checkbox.css",
|
|
25
|
+
"type": "registry:file",
|
|
26
|
+
"target": "@/components/ui/Checkbox.css"
|
|
27
|
+
}
|
|
28
|
+
],
|
|
29
|
+
"categories": [
|
|
30
|
+
"base-ui",
|
|
31
|
+
"component",
|
|
32
|
+
"inputs"
|
|
33
|
+
],
|
|
34
|
+
"meta": {
|
|
35
|
+
"baseThemes": {
|
|
36
|
+
"source": "package-and-source-copy",
|
|
37
|
+
"docsRoute": "/components/checkboxgroup",
|
|
38
|
+
"supportsStyles": [
|
|
39
|
+
"bento",
|
|
40
|
+
"shadcn",
|
|
41
|
+
"neo-brutalism",
|
|
42
|
+
"minimal",
|
|
43
|
+
"enterprise",
|
|
44
|
+
"linear",
|
|
45
|
+
"glass",
|
|
46
|
+
"terminal",
|
|
47
|
+
"material",
|
|
48
|
+
"fluent",
|
|
49
|
+
"retro",
|
|
50
|
+
"cyberpunk",
|
|
51
|
+
"editorial",
|
|
52
|
+
"calm",
|
|
53
|
+
"data-dense",
|
|
54
|
+
"playful",
|
|
55
|
+
"luxury",
|
|
56
|
+
"soft-ui",
|
|
57
|
+
"bauhaus",
|
|
58
|
+
"mono"
|
|
59
|
+
],
|
|
60
|
+
"styleContract": [
|
|
61
|
+
"data-style",
|
|
62
|
+
"data-theme",
|
|
63
|
+
"src/index.css",
|
|
64
|
+
"src/styles/tokens.css",
|
|
65
|
+
"src/styles/themes.css",
|
|
66
|
+
"src/styles/shadcn.css",
|
|
67
|
+
"src/styles/neo-brutalism.css",
|
|
68
|
+
"src/styles/cyberpunk.css",
|
|
69
|
+
"src/styles/terminal.css",
|
|
70
|
+
"src/styles/material.css",
|
|
71
|
+
"src/styles/glass.css"
|
|
72
|
+
]
|
|
73
|
+
},
|
|
74
|
+
"agent": {
|
|
75
|
+
"summary": "Use Checkbox Group when a React UI needs a shared state container for related checkboxes.",
|
|
76
|
+
"whenToUse": [
|
|
77
|
+
"Inputs",
|
|
78
|
+
"Base UI wrapper",
|
|
79
|
+
"CSS token theme support"
|
|
80
|
+
],
|
|
81
|
+
"packageInstall": [
|
|
82
|
+
"npm install base-themes @base-ui/react react react-dom",
|
|
83
|
+
"import base-themes/styles.css once",
|
|
84
|
+
"import { CheckboxGroup } from 'base-themes'"
|
|
85
|
+
],
|
|
86
|
+
"sourceCopy": [
|
|
87
|
+
"fetch /registry/items/checkbox-group.json",
|
|
88
|
+
"copy every files[].path to files[].target",
|
|
89
|
+
"copy every registry.style.files entry once",
|
|
90
|
+
"install dependencies from dependencies[]"
|
|
91
|
+
],
|
|
92
|
+
"installPlan": [
|
|
93
|
+
"npm install base-themes @base-ui/react react react-dom",
|
|
94
|
+
"import base-themes/styles.css once",
|
|
95
|
+
"import { CheckboxGroup } from 'base-themes'",
|
|
96
|
+
"or fetch /registry/items/checkbox-group.json for source-copy"
|
|
97
|
+
],
|
|
98
|
+
"verify": [
|
|
99
|
+
"npm run registry:check",
|
|
100
|
+
"npm run tokens:check",
|
|
101
|
+
"npm run lint",
|
|
102
|
+
"npm run build"
|
|
103
|
+
]
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
|
3
|
+
"name": "checkbox",
|
|
4
|
+
"type": "registry:ui",
|
|
5
|
+
"title": "Checkbox",
|
|
6
|
+
"description": "A labeled boolean control with checked and unchecked visual states.",
|
|
7
|
+
"dependencies": [
|
|
8
|
+
"@base-ui/react",
|
|
9
|
+
"clsx",
|
|
10
|
+
"lucide-react"
|
|
11
|
+
],
|
|
12
|
+
"files": [
|
|
13
|
+
{
|
|
14
|
+
"path": "src/components/ui/Checkbox.tsx",
|
|
15
|
+
"type": "registry:ui",
|
|
16
|
+
"target": "@/components/ui/Checkbox.tsx"
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"path": "src/components/ui/Checkbox.css",
|
|
20
|
+
"type": "registry:file",
|
|
21
|
+
"target": "@/components/ui/Checkbox.css"
|
|
22
|
+
}
|
|
23
|
+
],
|
|
24
|
+
"categories": [
|
|
25
|
+
"base-ui",
|
|
26
|
+
"component",
|
|
27
|
+
"inputs",
|
|
28
|
+
"form"
|
|
29
|
+
],
|
|
30
|
+
"meta": {
|
|
31
|
+
"baseThemes": {
|
|
32
|
+
"source": "package-and-source-copy",
|
|
33
|
+
"docsRoute": "/components/checkbox",
|
|
34
|
+
"supportsStyles": [
|
|
35
|
+
"bento",
|
|
36
|
+
"shadcn",
|
|
37
|
+
"neo-brutalism",
|
|
38
|
+
"minimal",
|
|
39
|
+
"enterprise",
|
|
40
|
+
"linear",
|
|
41
|
+
"glass",
|
|
42
|
+
"terminal",
|
|
43
|
+
"material",
|
|
44
|
+
"fluent",
|
|
45
|
+
"retro",
|
|
46
|
+
"cyberpunk",
|
|
47
|
+
"editorial",
|
|
48
|
+
"calm",
|
|
49
|
+
"data-dense",
|
|
50
|
+
"playful",
|
|
51
|
+
"luxury",
|
|
52
|
+
"soft-ui",
|
|
53
|
+
"bauhaus",
|
|
54
|
+
"mono"
|
|
55
|
+
],
|
|
56
|
+
"styleContract": [
|
|
57
|
+
"data-style",
|
|
58
|
+
"data-theme",
|
|
59
|
+
"src/index.css",
|
|
60
|
+
"src/styles/tokens.css",
|
|
61
|
+
"src/styles/themes.css",
|
|
62
|
+
"src/styles/shadcn.css",
|
|
63
|
+
"src/styles/neo-brutalism.css",
|
|
64
|
+
"src/styles/cyberpunk.css",
|
|
65
|
+
"src/styles/terminal.css",
|
|
66
|
+
"src/styles/material.css",
|
|
67
|
+
"src/styles/glass.css"
|
|
68
|
+
]
|
|
69
|
+
},
|
|
70
|
+
"agent": {
|
|
71
|
+
"summary": "Use Checkbox when a React UI needs a labeled boolean control with checked and unchecked visual states.",
|
|
72
|
+
"whenToUse": [
|
|
73
|
+
"Inputs",
|
|
74
|
+
"Base UI wrapper",
|
|
75
|
+
"CSS token theme support"
|
|
76
|
+
],
|
|
77
|
+
"packageInstall": [
|
|
78
|
+
"npm install base-themes @base-ui/react react react-dom",
|
|
79
|
+
"import base-themes/styles.css once",
|
|
80
|
+
"import { Checkbox } from 'base-themes'"
|
|
81
|
+
],
|
|
82
|
+
"sourceCopy": [
|
|
83
|
+
"fetch /registry/items/checkbox.json",
|
|
84
|
+
"copy every files[].path to files[].target",
|
|
85
|
+
"copy every registry.style.files entry once",
|
|
86
|
+
"install dependencies from dependencies[]"
|
|
87
|
+
],
|
|
88
|
+
"installPlan": [
|
|
89
|
+
"npm install base-themes @base-ui/react react react-dom",
|
|
90
|
+
"import base-themes/styles.css once",
|
|
91
|
+
"import { Checkbox } from 'base-themes'",
|
|
92
|
+
"or fetch /registry/items/checkbox.json for source-copy"
|
|
93
|
+
],
|
|
94
|
+
"verify": [
|
|
95
|
+
"npm run registry:check",
|
|
96
|
+
"npm run tokens:check",
|
|
97
|
+
"npm run lint",
|
|
98
|
+
"npm run build"
|
|
99
|
+
]
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
|
3
|
+
"name": "collapsible",
|
|
4
|
+
"type": "registry:ui",
|
|
5
|
+
"title": "Collapsible",
|
|
6
|
+
"description": "A single expandable region for optional detail.",
|
|
7
|
+
"dependencies": [
|
|
8
|
+
"@base-ui/react",
|
|
9
|
+
"clsx",
|
|
10
|
+
"lucide-react"
|
|
11
|
+
],
|
|
12
|
+
"files": [
|
|
13
|
+
{
|
|
14
|
+
"path": "src/components/ui/Collapsible.tsx",
|
|
15
|
+
"type": "registry:ui",
|
|
16
|
+
"target": "@/components/ui/Collapsible.tsx"
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"path": "src/components/ui/Collapsible.css",
|
|
20
|
+
"type": "registry:file",
|
|
21
|
+
"target": "@/components/ui/Collapsible.css"
|
|
22
|
+
}
|
|
23
|
+
],
|
|
24
|
+
"categories": [
|
|
25
|
+
"base-ui",
|
|
26
|
+
"component",
|
|
27
|
+
"disclosure"
|
|
28
|
+
],
|
|
29
|
+
"meta": {
|
|
30
|
+
"baseThemes": {
|
|
31
|
+
"source": "package-and-source-copy",
|
|
32
|
+
"docsRoute": "/components/collapsible",
|
|
33
|
+
"supportsStyles": [
|
|
34
|
+
"bento",
|
|
35
|
+
"shadcn",
|
|
36
|
+
"neo-brutalism",
|
|
37
|
+
"minimal",
|
|
38
|
+
"enterprise",
|
|
39
|
+
"linear",
|
|
40
|
+
"glass",
|
|
41
|
+
"terminal",
|
|
42
|
+
"material",
|
|
43
|
+
"fluent",
|
|
44
|
+
"retro",
|
|
45
|
+
"cyberpunk",
|
|
46
|
+
"editorial",
|
|
47
|
+
"calm",
|
|
48
|
+
"data-dense",
|
|
49
|
+
"playful",
|
|
50
|
+
"luxury",
|
|
51
|
+
"soft-ui",
|
|
52
|
+
"bauhaus",
|
|
53
|
+
"mono"
|
|
54
|
+
],
|
|
55
|
+
"styleContract": [
|
|
56
|
+
"data-style",
|
|
57
|
+
"data-theme",
|
|
58
|
+
"src/index.css",
|
|
59
|
+
"src/styles/tokens.css",
|
|
60
|
+
"src/styles/themes.css",
|
|
61
|
+
"src/styles/shadcn.css",
|
|
62
|
+
"src/styles/neo-brutalism.css",
|
|
63
|
+
"src/styles/cyberpunk.css",
|
|
64
|
+
"src/styles/terminal.css",
|
|
65
|
+
"src/styles/material.css",
|
|
66
|
+
"src/styles/glass.css"
|
|
67
|
+
]
|
|
68
|
+
},
|
|
69
|
+
"agent": {
|
|
70
|
+
"summary": "Use Collapsible when a React UI needs a single expandable region for optional detail.",
|
|
71
|
+
"whenToUse": [
|
|
72
|
+
"Disclosure",
|
|
73
|
+
"Base UI wrapper",
|
|
74
|
+
"CSS token theme support"
|
|
75
|
+
],
|
|
76
|
+
"packageInstall": [
|
|
77
|
+
"npm install base-themes @base-ui/react react react-dom",
|
|
78
|
+
"import base-themes/styles.css once",
|
|
79
|
+
"import { Collapsible } from 'base-themes'"
|
|
80
|
+
],
|
|
81
|
+
"sourceCopy": [
|
|
82
|
+
"fetch /registry/items/collapsible.json",
|
|
83
|
+
"copy every files[].path to files[].target",
|
|
84
|
+
"copy every registry.style.files entry once",
|
|
85
|
+
"install dependencies from dependencies[]"
|
|
86
|
+
],
|
|
87
|
+
"installPlan": [
|
|
88
|
+
"npm install base-themes @base-ui/react react react-dom",
|
|
89
|
+
"import base-themes/styles.css once",
|
|
90
|
+
"import { Collapsible } from 'base-themes'",
|
|
91
|
+
"or fetch /registry/items/collapsible.json for source-copy"
|
|
92
|
+
],
|
|
93
|
+
"verify": [
|
|
94
|
+
"npm run registry:check",
|
|
95
|
+
"npm run tokens:check",
|
|
96
|
+
"npm run lint",
|
|
97
|
+
"npm run build"
|
|
98
|
+
]
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
}
|