base-themes 0.1.1 → 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.
Files changed (282) hide show
  1. package/CHANGELOG.md +25 -0
  2. package/CODE_OF_CONDUCT.md +22 -0
  3. package/CONTRIBUTING.md +98 -0
  4. package/LICENSE +21 -0
  5. package/README.md +324 -5
  6. package/RELEASE.md +80 -0
  7. package/SECURITY.md +49 -0
  8. package/bin/base-themes.mjs +143 -0
  9. package/dist/base-themes.css +1 -1
  10. package/dist/base-themes.js +857 -302
  11. package/dist/llms-full.txt +288 -0
  12. package/dist/llms.txt +79 -0
  13. package/dist/types/blocks/AuthCard.d.ts +2 -0
  14. package/dist/types/blocks/CommandPaletteBlock.d.ts +2 -0
  15. package/dist/types/blocks/DashboardShell.d.ts +2 -0
  16. package/dist/types/blocks/DataTableBlock.d.ts +2 -0
  17. package/dist/types/blocks/PricingPanel.d.ts +2 -0
  18. package/dist/types/blocks/SettingsForm.d.ts +2 -0
  19. package/dist/types/blocks/TeamActivityFeed.d.ts +2 -0
  20. package/dist/types/blocks/ThemeShowcaseCard.d.ts +2 -0
  21. package/dist/types/blocks/index.d.ts +8 -0
  22. package/dist/types/components/ui/Input.d.ts +3 -0
  23. package/dist/types/components/ui/index.d.ts +1 -1
  24. package/dist/types/lib.d.ts +1 -0
  25. package/docs/adoption-dashboard.md +149 -0
  26. package/docs/analytics-setup.md +145 -0
  27. package/docs/community-gallery-proposal.md +64 -0
  28. package/docs/community-proof-telemetry.md +47 -0
  29. package/docs/contributor-issue-seeds.md +240 -0
  30. package/docs/registry-access-telemetry.md +87 -0
  31. package/docs/release-announcement-kit.md +229 -0
  32. package/docs/search-console-setup.md +111 -0
  33. package/docs/theme-token-contract.md +113 -0
  34. package/examples/dashboard/README.md +24 -0
  35. package/examples/dashboard/index.html +12 -0
  36. package/examples/dashboard/package-lock.json +1212 -0
  37. package/examples/dashboard/package.json +24 -0
  38. package/examples/dashboard/src/App.tsx +115 -0
  39. package/examples/dashboard/src/main.tsx +11 -0
  40. package/examples/dashboard/src/styles.css +129 -0
  41. package/examples/dashboard/src/vite-env.d.ts +4 -0
  42. package/examples/dashboard/tsconfig.app.json +23 -0
  43. package/examples/dashboard/tsconfig.json +7 -0
  44. package/examples/dashboard/tsconfig.node.json +15 -0
  45. package/examples/dashboard/vite.config.ts +6 -0
  46. package/examples/next/README.md +29 -0
  47. package/examples/next/app/base-themes-demo.tsx +70 -0
  48. package/examples/next/app/layout.tsx +16 -0
  49. package/examples/next/app/page.tsx +9 -0
  50. package/examples/next/app/styles.css +106 -0
  51. package/examples/next/next-env.d.ts +6 -0
  52. package/examples/next/next.config.ts +5 -0
  53. package/examples/next/package-lock.json +1199 -0
  54. package/examples/next/package.json +27 -0
  55. package/examples/next/tsconfig.json +36 -0
  56. package/examples/registry-copy/README.md +73 -0
  57. package/examples/registry-copy/plan-copy.mjs +130 -0
  58. package/examples/theme-customization/README.md +26 -0
  59. package/examples/theme-customization/index.html +12 -0
  60. package/examples/theme-customization/package-lock.json +1212 -0
  61. package/examples/theme-customization/package.json +24 -0
  62. package/examples/theme-customization/src/App.tsx +138 -0
  63. package/examples/theme-customization/src/main.tsx +11 -0
  64. package/examples/theme-customization/src/styles.css +138 -0
  65. package/examples/theme-customization/src/vite-env.d.ts +4 -0
  66. package/examples/theme-customization/tsconfig.app.json +23 -0
  67. package/examples/theme-customization/tsconfig.json +7 -0
  68. package/examples/theme-customization/tsconfig.node.json +15 -0
  69. package/examples/theme-customization/vite.config.ts +6 -0
  70. package/examples/vite/README.md +32 -0
  71. package/examples/vite/index.html +12 -0
  72. package/examples/vite/package-lock.json +1200 -0
  73. package/examples/vite/package.json +24 -0
  74. package/examples/vite/src/App.tsx +101 -0
  75. package/examples/vite/src/main.tsx +11 -0
  76. package/examples/vite/src/styles.css +125 -0
  77. package/examples/vite/src/vite-env.d.ts +4 -0
  78. package/examples/vite/tsconfig.app.json +23 -0
  79. package/examples/vite/tsconfig.json +7 -0
  80. package/examples/vite/tsconfig.node.json +15 -0
  81. package/examples/vite/vite.config.ts +6 -0
  82. package/llms-full.txt +288 -0
  83. package/llms.txt +79 -0
  84. package/package.json +157 -14
  85. package/public/previews/base-themes-bauhaus.png +0 -0
  86. package/public/previews/base-themes-bento.png +0 -0
  87. package/public/previews/base-themes-calm.png +0 -0
  88. package/public/previews/base-themes-cyberpunk.png +0 -0
  89. package/public/previews/base-themes-data-dense.png +0 -0
  90. package/public/previews/base-themes-editorial.png +0 -0
  91. package/public/previews/base-themes-enterprise.png +0 -0
  92. package/public/previews/base-themes-fluent.png +0 -0
  93. package/public/previews/base-themes-glass.png +0 -0
  94. package/public/previews/base-themes-linear.png +0 -0
  95. package/public/previews/base-themes-luxury.png +0 -0
  96. package/public/previews/base-themes-material.png +0 -0
  97. package/public/previews/base-themes-minimal.png +0 -0
  98. package/public/previews/base-themes-mono.png +0 -0
  99. package/public/previews/base-themes-neo-brutalism.png +0 -0
  100. package/public/previews/base-themes-playful.png +0 -0
  101. package/public/previews/base-themes-retro.png +0 -0
  102. package/public/previews/base-themes-shadcn.png +0 -0
  103. package/public/previews/base-themes-soft-ui.png +0 -0
  104. package/public/previews/base-themes-terminal.png +0 -0
  105. package/registry/items/accordion.json +101 -0
  106. package/registry/items/alert-dialog.json +107 -0
  107. package/registry/items/autocomplete.json +106 -0
  108. package/registry/items/avatar.json +101 -0
  109. package/registry/items/block-auth-card.json +105 -0
  110. package/registry/items/block-command-palette.json +99 -0
  111. package/registry/items/block-dashboard-shell.json +101 -0
  112. package/registry/items/block-data-table.json +99 -0
  113. package/registry/items/block-pricing-panel.json +99 -0
  114. package/registry/items/block-settings-form.json +107 -0
  115. package/registry/items/block-team-activity-feed.json +99 -0
  116. package/registry/items/block-theme-showcase-card.json +99 -0
  117. package/registry/items/button.json +102 -0
  118. package/registry/items/checkbox-group.json +106 -0
  119. package/registry/items/checkbox.json +102 -0
  120. package/registry/items/collapsible.json +101 -0
  121. package/registry/items/combobox.json +101 -0
  122. package/registry/items/context-menu.json +106 -0
  123. package/registry/items/csp-provider.json +96 -0
  124. package/registry/items/dialog.json +102 -0
  125. package/registry/items/direction-provider.json +101 -0
  126. package/registry/items/drawer.json +101 -0
  127. package/registry/items/field.json +101 -0
  128. package/registry/items/fieldset.json +101 -0
  129. package/registry/items/form.json +101 -0
  130. package/registry/items/input.json +102 -0
  131. package/registry/items/menu.json +101 -0
  132. package/registry/items/menubar.json +106 -0
  133. package/registry/items/meter.json +101 -0
  134. package/registry/items/navigation-menu.json +101 -0
  135. package/registry/items/number-field.json +101 -0
  136. package/registry/items/otp-field.json +101 -0
  137. package/registry/items/popover.json +102 -0
  138. package/registry/items/preview-card.json +101 -0
  139. package/registry/items/progress.json +101 -0
  140. package/registry/items/radio-group.json +102 -0
  141. package/registry/items/radio.json +101 -0
  142. package/registry/items/scroll-area.json +101 -0
  143. package/registry/items/select.json +102 -0
  144. package/registry/items/separator.json +101 -0
  145. package/registry/items/slider.json +102 -0
  146. package/registry/items/switch.json +102 -0
  147. package/registry/items/tabs.json +101 -0
  148. package/registry/items/theme-bauhaus.json +107 -0
  149. package/registry/items/theme-bento.json +107 -0
  150. package/registry/items/theme-calm.json +107 -0
  151. package/registry/items/theme-cyberpunk.json +108 -0
  152. package/registry/items/theme-data-dense.json +107 -0
  153. package/registry/items/theme-editorial.json +107 -0
  154. package/registry/items/theme-enterprise.json +108 -0
  155. package/registry/items/theme-fluent.json +107 -0
  156. package/registry/items/theme-glass.json +107 -0
  157. package/registry/items/theme-linear.json +107 -0
  158. package/registry/items/theme-luxury.json +107 -0
  159. package/registry/items/theme-material.json +107 -0
  160. package/registry/items/theme-minimal.json +107 -0
  161. package/registry/items/theme-mono.json +107 -0
  162. package/registry/items/theme-neo-brutalism.json +107 -0
  163. package/registry/items/theme-playful.json +107 -0
  164. package/registry/items/theme-retro.json +107 -0
  165. package/registry/items/theme-shadcn.json +107 -0
  166. package/registry/items/theme-soft-ui.json +107 -0
  167. package/registry/items/theme-terminal.json +107 -0
  168. package/registry/items/toast.json +106 -0
  169. package/registry/items/toggle-group.json +101 -0
  170. package/registry/items/toggle.json +101 -0
  171. package/registry/items/toolbar.json +101 -0
  172. package/registry/items/tooltip.json +102 -0
  173. package/registry/registry.json +564 -49
  174. package/registry/shadcn-registry.json +415 -0
  175. package/research/telemetry-fixtures/analytics-events.jsonl +9 -0
  176. package/research/telemetry-fixtures/bundle-report.json +44 -0
  177. package/research/telemetry-fixtures/community-proof.csv +5 -0
  178. package/research/telemetry-fixtures/registry-access.jsonl +10 -0
  179. package/research/telemetry-fixtures/search-console-export.csv +4 -0
  180. package/scripts/registry-plan.mjs +434 -0
  181. package/scripts/render-launch-actions.mjs +405 -0
  182. package/scripts/render-launch-status.mjs +373 -0
  183. package/scripts/render-release-announcement.mjs +329 -0
  184. package/scripts/verify-launch-readiness.mjs +415 -0
  185. package/scripts/verify-telemetry-fixtures.mjs +85 -0
  186. package/scripts/verify-telemetry-report.mjs +89 -0
  187. package/skills/base-themes/SKILL.md +156 -43
  188. package/src/blocks/AuthCard.tsx +29 -0
  189. package/src/blocks/Blocks.css +182 -0
  190. package/src/blocks/CommandPaletteBlock.tsx +32 -0
  191. package/src/blocks/DashboardShell.tsx +36 -0
  192. package/src/blocks/DataTableBlock.tsx +44 -0
  193. package/src/blocks/PricingPanel.tsx +28 -0
  194. package/src/blocks/SettingsForm.tsx +37 -0
  195. package/src/blocks/TeamActivityFeed.tsx +38 -0
  196. package/src/blocks/ThemeShowcaseCard.tsx +32 -0
  197. package/src/blocks/index.ts +8 -0
  198. package/src/components/ui/Accordion.css +42 -0
  199. package/src/components/ui/Accordion.tsx +41 -0
  200. package/src/components/ui/AlertDialog.css +40 -0
  201. package/src/components/ui/AlertDialog.tsx +52 -0
  202. package/src/components/ui/Autocomplete.css +3 -0
  203. package/src/components/ui/Autocomplete.tsx +50 -0
  204. package/src/components/ui/Avatar.css +45 -0
  205. package/src/components/ui/Avatar.tsx +36 -0
  206. package/src/components/ui/Button.css +79 -0
  207. package/src/components/ui/Button.tsx +20 -0
  208. package/src/components/ui/Checkbox.css +37 -0
  209. package/src/components/ui/Checkbox.tsx +32 -0
  210. package/src/components/ui/CheckboxGroup.tsx +21 -0
  211. package/src/components/ui/Collapsible.css +34 -0
  212. package/src/components/ui/Collapsible.tsx +29 -0
  213. package/src/components/ui/Combobox.css +75 -0
  214. package/src/components/ui/Combobox.tsx +53 -0
  215. package/src/components/ui/ContextMenu.css +9 -0
  216. package/src/components/ui/ContextMenu.tsx +47 -0
  217. package/src/components/ui/CspProvider.tsx +10 -0
  218. package/src/components/ui/Dialog.css +41 -0
  219. package/src/components/ui/Dialog.tsx +45 -0
  220. package/src/components/ui/DirectionProvider.tsx +17 -0
  221. package/src/components/ui/Drawer.css +77 -0
  222. package/src/components/ui/Drawer.tsx +56 -0
  223. package/src/components/ui/Field.css +19 -0
  224. package/src/components/ui/Field.tsx +24 -0
  225. package/src/components/ui/Fieldset.css +16 -0
  226. package/src/components/ui/Fieldset.tsx +19 -0
  227. package/src/components/ui/Form.css +5 -0
  228. package/src/components/ui/Form.tsx +12 -0
  229. package/src/components/ui/Input.css +50 -0
  230. package/src/components/ui/Input.tsx +62 -0
  231. package/src/components/ui/Menu.css +59 -0
  232. package/src/components/ui/Menu.tsx +50 -0
  233. package/src/components/ui/Menubar.css +26 -0
  234. package/src/components/ui/Menubar.tsx +42 -0
  235. package/src/components/ui/Meter.css +45 -0
  236. package/src/components/ui/Meter.tsx +37 -0
  237. package/src/components/ui/NavigationMenu.css +103 -0
  238. package/src/components/ui/NavigationMenu.tsx +64 -0
  239. package/src/components/ui/NumberField.css +38 -0
  240. package/src/components/ui/NumberField.tsx +28 -0
  241. package/src/components/ui/OtpField.css +28 -0
  242. package/src/components/ui/OtpField.tsx +24 -0
  243. package/src/components/ui/Popover.css +25 -0
  244. package/src/components/ui/Popover.tsx +37 -0
  245. package/src/components/ui/PreviewCard.css +33 -0
  246. package/src/components/ui/PreviewCard.tsx +43 -0
  247. package/src/components/ui/Progress.css +33 -0
  248. package/src/components/ui/Progress.tsx +28 -0
  249. package/src/components/ui/Radio.tsx +22 -0
  250. package/src/components/ui/RadioGroup.css +42 -0
  251. package/src/components/ui/RadioGroup.tsx +29 -0
  252. package/src/components/ui/ScrollArea.css +42 -0
  253. package/src/components/ui/ScrollArea.tsx +22 -0
  254. package/src/components/ui/Select.css +86 -0
  255. package/src/components/ui/Select.tsx +39 -0
  256. package/src/components/ui/Separator.css +14 -0
  257. package/src/components/ui/Separator.tsx +12 -0
  258. package/src/components/ui/Slider.css +39 -0
  259. package/src/components/ui/Slider.tsx +21 -0
  260. package/src/components/ui/Switch.css +45 -0
  261. package/src/components/ui/Switch.tsx +29 -0
  262. package/src/components/ui/Tabs.css +72 -0
  263. package/src/components/ui/Tabs.tsx +44 -0
  264. package/src/components/ui/Toast.css +75 -0
  265. package/src/components/ui/Toast.tsx +48 -0
  266. package/src/components/ui/Toggle.tsx +12 -0
  267. package/src/components/ui/ToggleGroup.css +35 -0
  268. package/src/components/ui/ToggleGroup.tsx +30 -0
  269. package/src/components/ui/Toolbar.css +60 -0
  270. package/src/components/ui/Toolbar.tsx +36 -0
  271. package/src/components/ui/Tooltip.css +14 -0
  272. package/src/components/ui/Tooltip.tsx +31 -0
  273. package/src/components/ui/index.ts +83 -0
  274. package/src/components/ui/useDirection.ts +1 -0
  275. package/src/components/ui/useToastManager.ts +11 -0
  276. package/src/docs/blockMeta.json +66 -0
  277. package/src/docs/componentMeta.json +322 -0
  278. package/src/docs/staticPageMeta.json +143 -0
  279. package/src/docs/themeMeta.json +22 -0
  280. package/src/styles/tokenContract.json +61 -0
  281. package/workers/analytics-receiver.mjs +170 -0
  282. package/wrangler.analytics.jsonc +12 -0
@@ -1,64 +1,579 @@
1
1
  {
2
2
  "$schema": "https://ui.shadcn.com/schema/registry.json",
3
3
  "name": "base-themes",
4
- "homepage": "https://base-ui.com/",
5
- "dependencies": ["@base-ui/react", "clsx", "lucide-react"],
4
+ "homepage": "https://github.com/markbang/base-themes",
5
+ "dependencies": [
6
+ "@base-ui/react",
7
+ "clsx",
8
+ "lucide-react"
9
+ ],
6
10
  "style": {
7
11
  "tokens": "src/styles/tokens.css",
8
12
  "global": "src/index.css",
13
+ "files": [
14
+ "src/index.css",
15
+ "src/styles/tokens.css",
16
+ "src/styles/themes.css",
17
+ "src/styles/shadcn.css",
18
+ "src/styles/neo-brutalism.css",
19
+ "src/styles/cyberpunk.css",
20
+ "src/styles/terminal.css",
21
+ "src/styles/material.css",
22
+ "src/styles/glass.css"
23
+ ],
9
24
  "default": "bento",
10
- "variants": ["bento", "shadcn", "neo-brutalism", "minimal", "enterprise", "linear", "glass", "terminal", "material", "fluent", "retro", "cyberpunk", "editorial", "calm", "data-dense", "playful", "luxury", "soft-ui", "bauhaus", "mono"]
25
+ "variants": [
26
+ "bento",
27
+ "shadcn",
28
+ "neo-brutalism",
29
+ "minimal",
30
+ "enterprise",
31
+ "linear",
32
+ "glass",
33
+ "terminal",
34
+ "material",
35
+ "fluent",
36
+ "retro",
37
+ "cyberpunk",
38
+ "editorial",
39
+ "calm",
40
+ "data-dense",
41
+ "playful",
42
+ "luxury",
43
+ "soft-ui",
44
+ "bauhaus",
45
+ "mono"
46
+ ]
11
47
  },
12
48
  "components": [
13
- { "name": "accordion", "title": "Accordion", "files": ["src/components/ui/Accordion.tsx", "src/components/ui/Accordion.css"] },
14
- { "name": "alert-dialog", "title": "Alert Dialog", "files": ["src/components/ui/AlertDialog.tsx", "src/components/ui/AlertDialog.css"] },
15
- { "name": "autocomplete", "title": "Autocomplete", "files": ["src/components/ui/Autocomplete.tsx", "src/components/ui/Autocomplete.css", "src/components/ui/Combobox.css"] },
16
- { "name": "avatar", "title": "Avatar", "files": ["src/components/ui/Avatar.tsx", "src/components/ui/Avatar.css"] },
17
- { "name": "button", "title": "Button", "files": ["src/components/ui/Button.tsx", "src/components/ui/Button.css"] },
18
- { "name": "checkbox", "title": "Checkbox", "files": ["src/components/ui/Checkbox.tsx", "src/components/ui/Checkbox.css"] },
19
- { "name": "checkbox-group", "title": "Checkbox Group", "files": ["src/components/ui/CheckboxGroup.tsx", "src/components/ui/Checkbox.css"] },
20
- { "name": "collapsible", "title": "Collapsible", "files": ["src/components/ui/Collapsible.tsx", "src/components/ui/Collapsible.css"] },
21
- { "name": "combobox", "title": "Combobox", "files": ["src/components/ui/Combobox.tsx", "src/components/ui/Combobox.css"] },
22
- { "name": "context-menu", "title": "Context Menu", "files": ["src/components/ui/ContextMenu.tsx", "src/components/ui/ContextMenu.css", "src/components/ui/Menu.css"] },
23
- { "name": "csp-provider", "title": "CSP Provider", "files": ["src/components/ui/CspProvider.tsx"] },
24
- { "name": "dialog", "title": "Dialog", "files": ["src/components/ui/Dialog.tsx", "src/components/ui/Dialog.css"] },
25
- { "name": "direction-provider", "title": "Direction Provider", "files": ["src/components/ui/DirectionProvider.tsx", "src/components/ui/useDirection.ts"] },
26
- { "name": "drawer", "title": "Drawer", "files": ["src/components/ui/Drawer.tsx", "src/components/ui/Drawer.css"] },
27
- { "name": "field", "title": "Field", "files": ["src/components/ui/Field.tsx", "src/components/ui/Field.css"] },
28
- { "name": "fieldset", "title": "Fieldset", "files": ["src/components/ui/Fieldset.tsx", "src/components/ui/Fieldset.css"] },
29
- { "name": "form", "title": "Form", "files": ["src/components/ui/Form.tsx", "src/components/ui/Form.css"] },
30
- { "name": "input", "title": "Input", "files": ["src/components/ui/Input.tsx", "src/components/ui/Input.css"] },
31
- { "name": "menu", "title": "Menu", "files": ["src/components/ui/Menu.tsx", "src/components/ui/Menu.css"] },
32
- { "name": "menubar", "title": "Menubar", "files": ["src/components/ui/Menubar.tsx", "src/components/ui/Menubar.css", "src/components/ui/Menu.css"] },
33
- { "name": "meter", "title": "Meter", "files": ["src/components/ui/Meter.tsx", "src/components/ui/Meter.css"] },
34
- { "name": "navigation-menu", "title": "Navigation Menu", "files": ["src/components/ui/NavigationMenu.tsx", "src/components/ui/NavigationMenu.css"] },
35
- { "name": "number-field", "title": "Number Field", "files": ["src/components/ui/NumberField.tsx", "src/components/ui/NumberField.css"] },
36
- { "name": "otp-field", "title": "OTP Field", "files": ["src/components/ui/OtpField.tsx", "src/components/ui/OtpField.css"] },
37
- { "name": "popover", "title": "Popover", "files": ["src/components/ui/Popover.tsx", "src/components/ui/Popover.css"] },
38
- { "name": "preview-card", "title": "Preview Card", "files": ["src/components/ui/PreviewCard.tsx", "src/components/ui/PreviewCard.css"] },
39
- { "name": "progress", "title": "Progress", "files": ["src/components/ui/Progress.tsx", "src/components/ui/Progress.css"] },
40
- { "name": "radio", "title": "Radio", "files": ["src/components/ui/Radio.tsx", "src/components/ui/RadioGroup.css"] },
41
- { "name": "radio-group", "title": "Radio Group", "files": ["src/components/ui/RadioGroup.tsx", "src/components/ui/RadioGroup.css"] },
42
- { "name": "scroll-area", "title": "Scroll Area", "files": ["src/components/ui/ScrollArea.tsx", "src/components/ui/ScrollArea.css"] },
43
- { "name": "select", "title": "Select", "files": ["src/components/ui/Select.tsx", "src/components/ui/Select.css"] },
44
- { "name": "separator", "title": "Separator", "files": ["src/components/ui/Separator.tsx", "src/components/ui/Separator.css"] },
45
- { "name": "slider", "title": "Slider", "files": ["src/components/ui/Slider.tsx", "src/components/ui/Slider.css"] },
46
- { "name": "switch", "title": "Switch", "files": ["src/components/ui/Switch.tsx", "src/components/ui/Switch.css"] },
47
- { "name": "tabs", "title": "Tabs", "files": ["src/components/ui/Tabs.tsx", "src/components/ui/Tabs.css"] },
48
- { "name": "toast", "title": "Toast", "files": ["src/components/ui/Toast.tsx", "src/components/ui/Toast.css", "src/components/ui/useToastManager.ts"] },
49
- { "name": "toggle", "title": "Toggle", "files": ["src/components/ui/Toggle.tsx", "src/components/ui/ToggleGroup.css"] },
50
- { "name": "toggle-group", "title": "Toggle Group", "files": ["src/components/ui/ToggleGroup.tsx", "src/components/ui/ToggleGroup.css"] },
51
- { "name": "toolbar", "title": "Toolbar", "files": ["src/components/ui/Toolbar.tsx", "src/components/ui/Toolbar.css"] },
52
- { "name": "tooltip", "title": "Tooltip", "files": ["src/components/ui/Tooltip.tsx", "src/components/ui/Tooltip.css"] }
49
+ {
50
+ "name": "accordion",
51
+ "title": "Accordion",
52
+ "files": [
53
+ "src/components/ui/Accordion.tsx",
54
+ "src/components/ui/Accordion.css"
55
+ ]
56
+ },
57
+ {
58
+ "name": "alert-dialog",
59
+ "title": "Alert Dialog",
60
+ "files": [
61
+ "src/components/ui/AlertDialog.tsx",
62
+ "src/components/ui/AlertDialog.css",
63
+ "src/components/ui/Button.css"
64
+ ]
65
+ },
66
+ {
67
+ "name": "autocomplete",
68
+ "title": "Autocomplete",
69
+ "files": [
70
+ "src/components/ui/Autocomplete.tsx",
71
+ "src/components/ui/Autocomplete.css",
72
+ "src/components/ui/Combobox.css"
73
+ ]
74
+ },
75
+ {
76
+ "name": "avatar",
77
+ "title": "Avatar",
78
+ "files": [
79
+ "src/components/ui/Avatar.tsx",
80
+ "src/components/ui/Avatar.css"
81
+ ]
82
+ },
83
+ {
84
+ "name": "button",
85
+ "title": "Button",
86
+ "files": [
87
+ "src/components/ui/Button.tsx",
88
+ "src/components/ui/Button.css"
89
+ ]
90
+ },
91
+ {
92
+ "name": "checkbox",
93
+ "title": "Checkbox",
94
+ "files": [
95
+ "src/components/ui/Checkbox.tsx",
96
+ "src/components/ui/Checkbox.css"
97
+ ]
98
+ },
99
+ {
100
+ "name": "checkbox-group",
101
+ "title": "Checkbox Group",
102
+ "files": [
103
+ "src/components/ui/CheckboxGroup.tsx",
104
+ "src/components/ui/Checkbox.tsx",
105
+ "src/components/ui/Checkbox.css"
106
+ ]
107
+ },
108
+ {
109
+ "name": "collapsible",
110
+ "title": "Collapsible",
111
+ "files": [
112
+ "src/components/ui/Collapsible.tsx",
113
+ "src/components/ui/Collapsible.css"
114
+ ]
115
+ },
116
+ {
117
+ "name": "combobox",
118
+ "title": "Combobox",
119
+ "files": [
120
+ "src/components/ui/Combobox.tsx",
121
+ "src/components/ui/Combobox.css"
122
+ ]
123
+ },
124
+ {
125
+ "name": "context-menu",
126
+ "title": "Context Menu",
127
+ "files": [
128
+ "src/components/ui/ContextMenu.tsx",
129
+ "src/components/ui/ContextMenu.css",
130
+ "src/components/ui/Menu.css"
131
+ ]
132
+ },
133
+ {
134
+ "name": "csp-provider",
135
+ "title": "CSP Provider",
136
+ "files": [
137
+ "src/components/ui/CspProvider.tsx"
138
+ ]
139
+ },
140
+ {
141
+ "name": "dialog",
142
+ "title": "Dialog",
143
+ "files": [
144
+ "src/components/ui/Dialog.tsx",
145
+ "src/components/ui/Dialog.css"
146
+ ]
147
+ },
148
+ {
149
+ "name": "direction-provider",
150
+ "title": "Direction Provider",
151
+ "files": [
152
+ "src/components/ui/DirectionProvider.tsx",
153
+ "src/components/ui/useDirection.ts"
154
+ ]
155
+ },
156
+ {
157
+ "name": "drawer",
158
+ "title": "Drawer",
159
+ "files": [
160
+ "src/components/ui/Drawer.tsx",
161
+ "src/components/ui/Drawer.css"
162
+ ]
163
+ },
164
+ {
165
+ "name": "field",
166
+ "title": "Field",
167
+ "files": [
168
+ "src/components/ui/Field.tsx",
169
+ "src/components/ui/Field.css"
170
+ ]
171
+ },
172
+ {
173
+ "name": "fieldset",
174
+ "title": "Fieldset",
175
+ "files": [
176
+ "src/components/ui/Fieldset.tsx",
177
+ "src/components/ui/Fieldset.css"
178
+ ]
179
+ },
180
+ {
181
+ "name": "form",
182
+ "title": "Form",
183
+ "files": [
184
+ "src/components/ui/Form.tsx",
185
+ "src/components/ui/Form.css"
186
+ ]
187
+ },
188
+ {
189
+ "name": "input",
190
+ "title": "Input",
191
+ "files": [
192
+ "src/components/ui/Input.tsx",
193
+ "src/components/ui/Input.css"
194
+ ]
195
+ },
196
+ {
197
+ "name": "menu",
198
+ "title": "Menu",
199
+ "files": [
200
+ "src/components/ui/Menu.tsx",
201
+ "src/components/ui/Menu.css"
202
+ ]
203
+ },
204
+ {
205
+ "name": "menubar",
206
+ "title": "Menubar",
207
+ "files": [
208
+ "src/components/ui/Menubar.tsx",
209
+ "src/components/ui/Menubar.css",
210
+ "src/components/ui/Menu.css"
211
+ ]
212
+ },
213
+ {
214
+ "name": "meter",
215
+ "title": "Meter",
216
+ "files": [
217
+ "src/components/ui/Meter.tsx",
218
+ "src/components/ui/Meter.css"
219
+ ]
220
+ },
221
+ {
222
+ "name": "navigation-menu",
223
+ "title": "Navigation Menu",
224
+ "files": [
225
+ "src/components/ui/NavigationMenu.tsx",
226
+ "src/components/ui/NavigationMenu.css"
227
+ ]
228
+ },
229
+ {
230
+ "name": "number-field",
231
+ "title": "Number Field",
232
+ "files": [
233
+ "src/components/ui/NumberField.tsx",
234
+ "src/components/ui/NumberField.css"
235
+ ]
236
+ },
237
+ {
238
+ "name": "otp-field",
239
+ "title": "OTP Field",
240
+ "files": [
241
+ "src/components/ui/OtpField.tsx",
242
+ "src/components/ui/OtpField.css"
243
+ ]
244
+ },
245
+ {
246
+ "name": "popover",
247
+ "title": "Popover",
248
+ "files": [
249
+ "src/components/ui/Popover.tsx",
250
+ "src/components/ui/Popover.css"
251
+ ]
252
+ },
253
+ {
254
+ "name": "preview-card",
255
+ "title": "Preview Card",
256
+ "files": [
257
+ "src/components/ui/PreviewCard.tsx",
258
+ "src/components/ui/PreviewCard.css"
259
+ ]
260
+ },
261
+ {
262
+ "name": "progress",
263
+ "title": "Progress",
264
+ "files": [
265
+ "src/components/ui/Progress.tsx",
266
+ "src/components/ui/Progress.css"
267
+ ]
268
+ },
269
+ {
270
+ "name": "radio",
271
+ "title": "Radio",
272
+ "files": [
273
+ "src/components/ui/Radio.tsx",
274
+ "src/components/ui/RadioGroup.css"
275
+ ]
276
+ },
277
+ {
278
+ "name": "radio-group",
279
+ "title": "Radio Group",
280
+ "files": [
281
+ "src/components/ui/RadioGroup.tsx",
282
+ "src/components/ui/RadioGroup.css"
283
+ ]
284
+ },
285
+ {
286
+ "name": "scroll-area",
287
+ "title": "Scroll Area",
288
+ "files": [
289
+ "src/components/ui/ScrollArea.tsx",
290
+ "src/components/ui/ScrollArea.css"
291
+ ]
292
+ },
293
+ {
294
+ "name": "select",
295
+ "title": "Select",
296
+ "files": [
297
+ "src/components/ui/Select.tsx",
298
+ "src/components/ui/Select.css"
299
+ ]
300
+ },
301
+ {
302
+ "name": "separator",
303
+ "title": "Separator",
304
+ "files": [
305
+ "src/components/ui/Separator.tsx",
306
+ "src/components/ui/Separator.css"
307
+ ]
308
+ },
309
+ {
310
+ "name": "slider",
311
+ "title": "Slider",
312
+ "files": [
313
+ "src/components/ui/Slider.tsx",
314
+ "src/components/ui/Slider.css"
315
+ ]
316
+ },
317
+ {
318
+ "name": "switch",
319
+ "title": "Switch",
320
+ "files": [
321
+ "src/components/ui/Switch.tsx",
322
+ "src/components/ui/Switch.css"
323
+ ]
324
+ },
325
+ {
326
+ "name": "tabs",
327
+ "title": "Tabs",
328
+ "files": [
329
+ "src/components/ui/Tabs.tsx",
330
+ "src/components/ui/Tabs.css"
331
+ ]
332
+ },
333
+ {
334
+ "name": "toast",
335
+ "title": "Toast",
336
+ "files": [
337
+ "src/components/ui/Toast.tsx",
338
+ "src/components/ui/Toast.css",
339
+ "src/components/ui/useToastManager.ts"
340
+ ]
341
+ },
342
+ {
343
+ "name": "toggle",
344
+ "title": "Toggle",
345
+ "files": [
346
+ "src/components/ui/Toggle.tsx",
347
+ "src/components/ui/ToggleGroup.css"
348
+ ]
349
+ },
350
+ {
351
+ "name": "toggle-group",
352
+ "title": "Toggle Group",
353
+ "files": [
354
+ "src/components/ui/ToggleGroup.tsx",
355
+ "src/components/ui/ToggleGroup.css"
356
+ ]
357
+ },
358
+ {
359
+ "name": "toolbar",
360
+ "title": "Toolbar",
361
+ "files": [
362
+ "src/components/ui/Toolbar.tsx",
363
+ "src/components/ui/Toolbar.css"
364
+ ]
365
+ },
366
+ {
367
+ "name": "tooltip",
368
+ "title": "Tooltip",
369
+ "files": [
370
+ "src/components/ui/Tooltip.tsx",
371
+ "src/components/ui/Tooltip.css"
372
+ ]
373
+ }
53
374
  ],
54
375
  "blocks": [
55
- { "name": "dashboard-shell", "title": "Dashboard Shell", "route": "/blocks", "components": ["button", "progress", "meter"] },
56
- { "name": "settings-form", "title": "Settings Form", "route": "/blocks", "components": ["fieldset", "field", "switch", "button"] }
376
+ {
377
+ "name": "dashboard-shell",
378
+ "title": "Dashboard Shell",
379
+ "description": "Operational dashboard header with metrics, progress, and health status.",
380
+ "category": "Application UI",
381
+ "route": "/blocks/dashboard-shell",
382
+ "components": [
383
+ "button",
384
+ "progress",
385
+ "meter"
386
+ ],
387
+ "files": [
388
+ "src/blocks/DashboardShell.tsx",
389
+ "src/blocks/Blocks.css"
390
+ ]
391
+ },
392
+ {
393
+ "name": "settings-form",
394
+ "title": "Settings Form",
395
+ "description": "Workspace settings form with fields, density selection, and switches.",
396
+ "category": "Forms",
397
+ "route": "/blocks/settings-form",
398
+ "components": [
399
+ "fieldset",
400
+ "field",
401
+ "input",
402
+ "select",
403
+ "switch",
404
+ "button"
405
+ ],
406
+ "files": [
407
+ "src/blocks/SettingsForm.tsx",
408
+ "src/blocks/Blocks.css"
409
+ ]
410
+ },
411
+ {
412
+ "name": "auth-card",
413
+ "title": "Auth Card",
414
+ "description": "Focused sign-in card with email, password, remembered device, and SSO action.",
415
+ "category": "Authentication",
416
+ "route": "/blocks/auth-card",
417
+ "components": [
418
+ "button",
419
+ "field",
420
+ "input",
421
+ "separator",
422
+ "switch"
423
+ ],
424
+ "files": [
425
+ "src/blocks/AuthCard.tsx",
426
+ "src/blocks/Blocks.css"
427
+ ]
428
+ },
429
+ {
430
+ "name": "pricing-panel",
431
+ "title": "Pricing Panel",
432
+ "description": "Compact pricing and upgrade panel for billing or plan-selection screens.",
433
+ "category": "Billing",
434
+ "route": "/blocks/pricing-panel",
435
+ "components": [
436
+ "button",
437
+ "checkbox"
438
+ ],
439
+ "files": [
440
+ "src/blocks/PricingPanel.tsx",
441
+ "src/blocks/Blocks.css"
442
+ ]
443
+ },
444
+ {
445
+ "name": "data-table",
446
+ "title": "Data Table",
447
+ "description": "Small operational table with status filtering and row badges.",
448
+ "category": "Data Display",
449
+ "route": "/blocks/data-table",
450
+ "components": [
451
+ "button",
452
+ "select"
453
+ ],
454
+ "files": [
455
+ "src/blocks/DataTableBlock.tsx",
456
+ "src/blocks/Blocks.css"
457
+ ]
458
+ },
459
+ {
460
+ "name": "command-palette",
461
+ "title": "Command Palette",
462
+ "description": "Quick-action search panel for navigation, product commands, and agent workflows.",
463
+ "category": "Command",
464
+ "route": "/blocks/command-palette",
465
+ "components": [
466
+ "button",
467
+ "combobox"
468
+ ],
469
+ "files": [
470
+ "src/blocks/CommandPaletteBlock.tsx",
471
+ "src/blocks/Blocks.css"
472
+ ]
473
+ },
474
+ {
475
+ "name": "team-activity-feed",
476
+ "title": "Team Activity Feed",
477
+ "description": "Recent workspace activity feed with team avatars and collaboration status.",
478
+ "category": "Collaboration",
479
+ "route": "/blocks/team-activity-feed",
480
+ "components": [
481
+ "avatar",
482
+ "button"
483
+ ],
484
+ "files": [
485
+ "src/blocks/TeamActivityFeed.tsx",
486
+ "src/blocks/Blocks.css"
487
+ ]
488
+ },
489
+ {
490
+ "name": "theme-showcase-card",
491
+ "title": "Theme Showcase Card",
492
+ "description": "Theme value card with token swatches, tabs, and a theme CTA.",
493
+ "category": "Marketing",
494
+ "route": "/blocks/theme-showcase-card",
495
+ "components": [
496
+ "button",
497
+ "tabs"
498
+ ],
499
+ "files": [
500
+ "src/blocks/ThemeShowcaseCard.tsx",
501
+ "src/blocks/Blocks.css"
502
+ ]
503
+ }
57
504
  ],
58
505
  "pages": [
59
- { "name": "components", "route": "/components/button" },
60
- { "name": "blocks", "route": "/blocks" },
61
- { "name": "themes", "route": "/themes" },
62
- { "name": "installation", "route": "/docs/installation" }
506
+ {
507
+ "name": "components",
508
+ "route": "/components/button"
509
+ },
510
+ {
511
+ "name": "blocks",
512
+ "route": "/blocks"
513
+ },
514
+ {
515
+ "name": "themes",
516
+ "route": "/themes"
517
+ },
518
+ {
519
+ "name": "installation",
520
+ "route": "/docs/installation"
521
+ },
522
+ {
523
+ "name": "why-base-themes",
524
+ "route": "/docs/why-base-themes"
525
+ },
526
+ {
527
+ "name": "base-ui-vs-shadcn",
528
+ "route": "/docs/base-ui-vs-shadcn"
529
+ },
530
+ {
531
+ "name": "token-system",
532
+ "route": "/docs/token-system"
533
+ },
534
+ {
535
+ "name": "accessibility",
536
+ "route": "/docs/accessibility"
537
+ },
538
+ {
539
+ "name": "migration-guide",
540
+ "route": "/docs/migration-guide"
541
+ },
542
+ {
543
+ "name": "design-handoff",
544
+ "route": "/docs/design-handoff"
545
+ },
546
+ {
547
+ "name": "theming",
548
+ "route": "/docs/theming"
549
+ },
550
+ {
551
+ "name": "theme-customization",
552
+ "route": "/docs/theme-customization"
553
+ },
554
+ {
555
+ "name": "registry",
556
+ "route": "/docs/registry"
557
+ },
558
+ {
559
+ "name": "cli",
560
+ "route": "/docs/cli"
561
+ },
562
+ {
563
+ "name": "agent-usage",
564
+ "route": "/docs/agent-usage"
565
+ },
566
+ {
567
+ "name": "examples",
568
+ "route": "/docs/examples"
569
+ },
570
+ {
571
+ "name": "contributing",
572
+ "route": "/docs/contributing"
573
+ },
574
+ {
575
+ "name": "security",
576
+ "route": "/docs/security"
577
+ }
63
578
  ]
64
579
  }