@once-ui-system/core 1.7.11 → 1.7.13

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 (392) hide show
  1. package/AGENTS.md +53 -0
  2. package/README.md +27 -0
  3. package/agent/once-ui-codegen.mdc +27 -0
  4. package/ai/catalog.json +1650 -0
  5. package/ai/catalog.seed.json +411 -0
  6. package/ai/components/Accordion.json +136 -0
  7. package/ai/components/AccordionGroup.json +128 -0
  8. package/ai/components/Animation.json +146 -0
  9. package/ai/components/Arrow.json +128 -0
  10. package/ai/components/AutoScroll.json +130 -0
  11. package/ai/components/Avatar.json +133 -0
  12. package/ai/components/AvatarGroup.json +129 -0
  13. package/ai/components/Background.json +131 -0
  14. package/ai/components/Badge.json +132 -0
  15. package/ai/components/Banner.json +122 -0
  16. package/ai/components/BarChart.json +123 -0
  17. package/ai/components/BlobFx.json +125 -0
  18. package/ai/components/BlockQuote.json +132 -0
  19. package/ai/components/Button.json +26 -0
  20. package/ai/components/Card.json +129 -0
  21. package/ai/components/Carousel.json +134 -0
  22. package/ai/components/CelebrationFx.json +132 -0
  23. package/ai/components/ChartHeader.json +130 -0
  24. package/ai/components/ChartStatus.json +12 -0
  25. package/ai/components/Checkbox.json +13 -0
  26. package/ai/components/Chip.json +132 -0
  27. package/ai/components/CodeBlock.json +122 -0
  28. package/ai/components/ColorInput.json +13 -0
  29. package/ai/components/Column.json +128 -0
  30. package/ai/components/CompareImage.json +126 -0
  31. package/ai/components/ContextMenu.json +22 -0
  32. package/ai/components/CountFx.json +82 -0
  33. package/ai/components/CountdownFx.json +11 -0
  34. package/ai/components/Cursor.json +9 -0
  35. package/ai/components/CursorCard.json +128 -0
  36. package/ai/components/DataTooltip.json +15 -0
  37. package/ai/components/DateInput.json +21 -0
  38. package/ai/components/DatePicker.json +143 -0
  39. package/ai/components/DateRangeInput.json +18 -0
  40. package/ai/components/DateRangePicker.json +129 -0
  41. package/ai/components/Dialog.json +134 -0
  42. package/ai/components/DialogProvider.json +8 -0
  43. package/ai/components/Dropdown.json +128 -0
  44. package/ai/components/DropdownWrapper.json +28 -0
  45. package/ai/components/EmojiPicker.json +129 -0
  46. package/ai/components/EmojiPickerDropdown.json +13 -0
  47. package/ai/components/Fade.json +130 -0
  48. package/ai/components/FadingLettersFx.json +77 -0
  49. package/ai/components/Feedback.json +132 -0
  50. package/ai/components/Flex.json +125 -0
  51. package/ai/components/FlipFx.json +133 -0
  52. package/ai/components/GlitchFx.json +128 -0
  53. package/ai/components/Grid.json +121 -0
  54. package/ai/components/Heading.json +75 -0
  55. package/ai/components/HeadingLink.json +127 -0
  56. package/ai/components/HeadingNav.json +124 -0
  57. package/ai/components/HoloFx.json +128 -0
  58. package/ai/components/Hover.json +130 -0
  59. package/ai/components/HoverCard.json +122 -0
  60. package/ai/components/Icon.json +132 -0
  61. package/ai/components/IconButton.json +22 -0
  62. package/ai/components/InfiniteScroll.json +130 -0
  63. package/ai/components/InlineCode.json +126 -0
  64. package/ai/components/Input.json +24 -0
  65. package/ai/components/InteractiveDetails.json +14 -0
  66. package/ai/components/Kbar.json +10 -0
  67. package/ai/components/Kbd.json +127 -0
  68. package/ai/components/Legend.json +14 -0
  69. package/ai/components/LetterFx.json +14 -0
  70. package/ai/components/Line.json +125 -0
  71. package/ai/components/LineBarChart.json +123 -0
  72. package/ai/components/LineChart.json +123 -0
  73. package/ai/components/LinearGauge.json +130 -0
  74. package/ai/components/LinearGradient.json +15 -0
  75. package/ai/components/List.json +127 -0
  76. package/ai/components/ListItem.json +77 -0
  77. package/ai/components/Logo.json +16 -0
  78. package/ai/components/LogoCloud.json +124 -0
  79. package/ai/components/Mask.json +131 -0
  80. package/ai/components/MasonryGrid.json +132 -0
  81. package/ai/components/MatrixFx.json +135 -0
  82. package/ai/components/Media.json +142 -0
  83. package/ai/components/MediaUpload.json +122 -0
  84. package/ai/components/MegaMenu.json +125 -0
  85. package/ai/components/MobileMegaMenu.json +125 -0
  86. package/ai/components/Modal.json +12 -0
  87. package/ai/components/NavIcon.json +127 -0
  88. package/ai/components/NumberInput.json +16 -0
  89. package/ai/components/OTPInput.json +13 -0
  90. package/ai/components/OgCard.json +135 -0
  91. package/ai/components/Option.json +137 -0
  92. package/ai/components/Particle.json +135 -0
  93. package/ai/components/PasswordInput.json +8 -0
  94. package/ai/components/PieChart.json +123 -0
  95. package/ai/components/ProgressBar.json +131 -0
  96. package/ai/components/Pulse.json +129 -0
  97. package/ai/components/RadialGauge.json +134 -0
  98. package/ai/components/RadialGradient.json +16 -0
  99. package/ai/components/RadioButton.json +17 -0
  100. package/ai/components/RevealFx.json +131 -0
  101. package/ai/components/Row.json +128 -0
  102. package/ai/components/Schema.json +17 -0
  103. package/ai/components/ScrollContainer.json +126 -0
  104. package/ai/components/ScrollToTop.json +124 -0
  105. package/ai/components/Scroller.json +128 -0
  106. package/ai/components/SegmentedControl.json +132 -0
  107. package/ai/components/Select.json +21 -0
  108. package/ai/components/ShineFx.json +80 -0
  109. package/ai/components/Skeleton.json +129 -0
  110. package/ai/components/Slider.json +17 -0
  111. package/ai/components/SmartLink.json +17 -0
  112. package/ai/components/Spinner.json +127 -0
  113. package/ai/components/SplitView.json +129 -0
  114. package/ai/components/StatusIndicator.json +128 -0
  115. package/ai/components/StyleOverlay.json +126 -0
  116. package/ai/components/StylePanel.json +125 -0
  117. package/ai/components/Swiper.json +130 -0
  118. package/ai/components/Switch.json +20 -0
  119. package/ai/components/Table.json +140 -0
  120. package/ai/components/Tag.json +129 -0
  121. package/ai/components/TagInput.json +12 -0
  122. package/ai/components/Text.json +72 -0
  123. package/ai/components/Textarea.json +24 -0
  124. package/ai/components/ThemeSwitcher.json +122 -0
  125. package/ai/components/TiltFx.json +126 -0
  126. package/ai/components/Timeline.json +126 -0
  127. package/ai/components/Toast.json +13 -0
  128. package/ai/components/Toaster.json +14 -0
  129. package/ai/components/ToggleButton.json +24 -0
  130. package/ai/components/Tooltip.json +129 -0
  131. package/ai/components/TypeFx.json +15 -0
  132. package/ai/components/User.json +15 -0
  133. package/ai/components/UserMenu.json +16 -0
  134. package/ai/components/WeatherFx.json +133 -0
  135. package/ai/examples/auth.tsx +105 -0
  136. package/ai/examples/blocks/Background6.tsx +25 -0
  137. package/ai/examples/blocks/Chat1.tsx +70 -0
  138. package/ai/examples/blocks/Dashboard1.tsx +404 -0
  139. package/ai/examples/blocks/Feed3.tsx +151 -0
  140. package/ai/examples/blocks/Footer1.tsx +30 -0
  141. package/ai/examples/blocks/Footer2.tsx +96 -0
  142. package/ai/examples/blocks/Footer3.tsx +127 -0
  143. package/ai/examples/blocks/Footer4.tsx +406 -0
  144. package/ai/examples/blocks/Header1.tsx +370 -0
  145. package/ai/examples/blocks/Header2.tsx +98 -0
  146. package/ai/examples/blocks/Header3.tsx +133 -0
  147. package/ai/examples/blocks/Header4.tsx +123 -0
  148. package/ai/examples/blocks/Productivity1.tsx +318 -0
  149. package/ai/examples/blocks/Roadmap1.tsx +133 -0
  150. package/ai/examples/blocks/Sidebar1.tsx +34 -0
  151. package/ai/examples/blocks/Sidebar2.tsx +17 -0
  152. package/ai/examples/blocks/Sidebar4.tsx +92 -0
  153. package/ai/examples/blocks/Sidebar5.tsx +73 -0
  154. package/ai/examples/blocks/Streaming1.tsx +353 -0
  155. package/ai/examples/blocks/Table1.tsx +303 -0
  156. package/ai/examples/blocks/Waitlist1.tsx +141 -0
  157. package/ai/examples/blocks/content/chat1content.ts +65 -0
  158. package/ai/examples/blocks/content/resources.ts +5 -0
  159. package/ai/examples/blocks/content/roadmap1content.ts +51 -0
  160. package/ai/examples/blocks/manifest.json +191 -0
  161. package/ai/examples/dashboard.tsx +150 -0
  162. package/ai/examples/marketing-hero.tsx +152 -0
  163. package/ai/examples/pricing.tsx +219 -0
  164. package/ai/examples/settings.tsx +140 -0
  165. package/ai/gotchas.json +85 -0
  166. package/ai/manifest.json +21 -0
  167. package/ai/rules.compact.md +73 -0
  168. package/ai/spec.json +2694 -2701
  169. package/ai/tasks/auth.json +23 -0
  170. package/ai/tasks/chat.json +28 -0
  171. package/ai/tasks/dashboard.json +39 -0
  172. package/ai/tasks/index.json +12 -0
  173. package/ai/tasks/marketing-hero.json +38 -0
  174. package/ai/tasks/pricing.json +42 -0
  175. package/ai/tasks/roadmap.json +22 -0
  176. package/ai/tasks/settings.json +34 -0
  177. package/dist/AGENTS.md +53 -0
  178. package/dist/README.md +27 -0
  179. package/dist/agent/once-ui-codegen.mdc +27 -0
  180. package/dist/ai/catalog.json +1650 -0
  181. package/dist/ai/catalog.seed.json +411 -0
  182. package/dist/ai/components/Accordion.json +136 -0
  183. package/dist/ai/components/AccordionGroup.json +128 -0
  184. package/dist/ai/components/Animation.json +146 -0
  185. package/dist/ai/components/Arrow.json +128 -0
  186. package/dist/ai/components/AutoScroll.json +130 -0
  187. package/dist/ai/components/Avatar.json +133 -0
  188. package/dist/ai/components/AvatarGroup.json +129 -0
  189. package/dist/ai/components/Background.json +131 -0
  190. package/dist/ai/components/Badge.json +132 -0
  191. package/dist/ai/components/Banner.json +122 -0
  192. package/dist/ai/components/BarChart.json +123 -0
  193. package/dist/ai/components/BlobFx.json +125 -0
  194. package/dist/ai/components/BlockQuote.json +132 -0
  195. package/dist/ai/components/Button.json +26 -0
  196. package/dist/ai/components/Card.json +129 -0
  197. package/dist/ai/components/Carousel.json +134 -0
  198. package/dist/ai/components/CelebrationFx.json +132 -0
  199. package/dist/ai/components/ChartHeader.json +130 -0
  200. package/dist/ai/components/ChartStatus.json +12 -0
  201. package/dist/ai/components/Checkbox.json +13 -0
  202. package/dist/ai/components/Chip.json +132 -0
  203. package/dist/ai/components/CodeBlock.json +122 -0
  204. package/dist/ai/components/ColorInput.json +13 -0
  205. package/dist/ai/components/Column.json +128 -0
  206. package/dist/ai/components/CompareImage.json +126 -0
  207. package/dist/ai/components/ContextMenu.json +22 -0
  208. package/dist/ai/components/CountFx.json +82 -0
  209. package/dist/ai/components/CountdownFx.json +11 -0
  210. package/dist/ai/components/Cursor.json +9 -0
  211. package/dist/ai/components/CursorCard.json +128 -0
  212. package/dist/ai/components/DataTooltip.json +15 -0
  213. package/dist/ai/components/DateInput.json +21 -0
  214. package/dist/ai/components/DatePicker.json +143 -0
  215. package/dist/ai/components/DateRangeInput.json +18 -0
  216. package/dist/ai/components/DateRangePicker.json +129 -0
  217. package/dist/ai/components/Dialog.json +134 -0
  218. package/dist/ai/components/DialogProvider.json +8 -0
  219. package/dist/ai/components/Dropdown.json +128 -0
  220. package/dist/ai/components/DropdownWrapper.json +28 -0
  221. package/dist/ai/components/EmojiPicker.json +129 -0
  222. package/dist/ai/components/EmojiPickerDropdown.json +13 -0
  223. package/dist/ai/components/Fade.json +130 -0
  224. package/dist/ai/components/FadingLettersFx.json +77 -0
  225. package/dist/ai/components/Feedback.json +132 -0
  226. package/dist/ai/components/Flex.json +125 -0
  227. package/dist/ai/components/FlipFx.json +133 -0
  228. package/dist/ai/components/GlitchFx.json +128 -0
  229. package/dist/ai/components/Grid.json +121 -0
  230. package/dist/ai/components/Heading.json +75 -0
  231. package/dist/ai/components/HeadingLink.json +127 -0
  232. package/dist/ai/components/HeadingNav.json +124 -0
  233. package/dist/ai/components/HoloFx.json +128 -0
  234. package/dist/ai/components/Hover.json +130 -0
  235. package/dist/ai/components/HoverCard.json +122 -0
  236. package/dist/ai/components/Icon.json +132 -0
  237. package/dist/ai/components/IconButton.json +22 -0
  238. package/dist/ai/components/InfiniteScroll.json +130 -0
  239. package/dist/ai/components/InlineCode.json +126 -0
  240. package/dist/ai/components/Input.json +24 -0
  241. package/dist/ai/components/InteractiveDetails.json +14 -0
  242. package/dist/ai/components/Kbar.json +10 -0
  243. package/dist/ai/components/Kbd.json +127 -0
  244. package/dist/ai/components/Legend.json +14 -0
  245. package/dist/ai/components/LetterFx.json +14 -0
  246. package/dist/ai/components/Line.json +125 -0
  247. package/dist/ai/components/LineBarChart.json +123 -0
  248. package/dist/ai/components/LineChart.json +123 -0
  249. package/dist/ai/components/LinearGauge.json +130 -0
  250. package/dist/ai/components/LinearGradient.json +15 -0
  251. package/dist/ai/components/List.json +127 -0
  252. package/dist/ai/components/ListItem.json +77 -0
  253. package/dist/ai/components/Logo.json +16 -0
  254. package/dist/ai/components/LogoCloud.json +124 -0
  255. package/dist/ai/components/Mask.json +131 -0
  256. package/dist/ai/components/MasonryGrid.json +132 -0
  257. package/dist/ai/components/MatrixFx.json +135 -0
  258. package/dist/ai/components/Media.json +142 -0
  259. package/dist/ai/components/MediaUpload.json +122 -0
  260. package/dist/ai/components/MegaMenu.json +125 -0
  261. package/dist/ai/components/MobileMegaMenu.json +125 -0
  262. package/dist/ai/components/Modal.json +12 -0
  263. package/dist/ai/components/NavIcon.json +127 -0
  264. package/dist/ai/components/NumberInput.json +16 -0
  265. package/dist/ai/components/OTPInput.json +13 -0
  266. package/dist/ai/components/OgCard.json +135 -0
  267. package/dist/ai/components/Option.json +137 -0
  268. package/dist/ai/components/Particle.json +135 -0
  269. package/dist/ai/components/PasswordInput.json +8 -0
  270. package/dist/ai/components/PieChart.json +123 -0
  271. package/dist/ai/components/ProgressBar.json +131 -0
  272. package/dist/ai/components/Pulse.json +129 -0
  273. package/dist/ai/components/RadialGauge.json +134 -0
  274. package/dist/ai/components/RadialGradient.json +16 -0
  275. package/dist/ai/components/RadioButton.json +17 -0
  276. package/dist/ai/components/RevealFx.json +131 -0
  277. package/dist/ai/components/Row.json +128 -0
  278. package/dist/ai/components/Schema.json +17 -0
  279. package/dist/ai/components/ScrollContainer.json +126 -0
  280. package/dist/ai/components/ScrollToTop.json +124 -0
  281. package/dist/ai/components/Scroller.json +128 -0
  282. package/dist/ai/components/SegmentedControl.json +132 -0
  283. package/dist/ai/components/Select.json +21 -0
  284. package/dist/ai/components/ShineFx.json +80 -0
  285. package/dist/ai/components/Skeleton.json +129 -0
  286. package/dist/ai/components/Slider.json +17 -0
  287. package/dist/ai/components/SmartLink.json +17 -0
  288. package/dist/ai/components/Spinner.json +127 -0
  289. package/dist/ai/components/SplitView.json +129 -0
  290. package/dist/ai/components/StatusIndicator.json +128 -0
  291. package/dist/ai/components/StyleOverlay.json +126 -0
  292. package/dist/ai/components/StylePanel.json +125 -0
  293. package/dist/ai/components/Swiper.json +130 -0
  294. package/dist/ai/components/Switch.json +20 -0
  295. package/dist/ai/components/Table.json +140 -0
  296. package/dist/ai/components/Tag.json +129 -0
  297. package/dist/ai/components/TagInput.json +12 -0
  298. package/dist/ai/components/Text.json +72 -0
  299. package/dist/ai/components/Textarea.json +24 -0
  300. package/dist/ai/components/ThemeSwitcher.json +122 -0
  301. package/dist/ai/components/TiltFx.json +126 -0
  302. package/dist/ai/components/Timeline.json +126 -0
  303. package/dist/ai/components/Toast.json +13 -0
  304. package/dist/ai/components/Toaster.json +14 -0
  305. package/dist/ai/components/ToggleButton.json +24 -0
  306. package/dist/ai/components/Tooltip.json +129 -0
  307. package/dist/ai/components/TypeFx.json +15 -0
  308. package/dist/ai/components/User.json +15 -0
  309. package/dist/ai/components/UserMenu.json +16 -0
  310. package/dist/ai/components/WeatherFx.json +133 -0
  311. package/dist/ai/eval-tasks.md +71 -0
  312. package/dist/ai/examples/blocks/manifest.json +191 -0
  313. package/dist/ai/gotchas.json +85 -0
  314. package/dist/ai/manifest.json +21 -0
  315. package/dist/ai/recipes.md +149 -0
  316. package/dist/ai/rules.compact.md +73 -0
  317. package/dist/ai/rules.md +217 -0
  318. package/dist/ai/spec.json +2695 -0
  319. package/dist/ai/tasks/auth.json +23 -0
  320. package/dist/ai/tasks/chat.json +28 -0
  321. package/dist/ai/tasks/dashboard.json +39 -0
  322. package/dist/ai/tasks/index.json +12 -0
  323. package/dist/ai/tasks/marketing-hero.json +38 -0
  324. package/dist/ai/tasks/pricing.json +42 -0
  325. package/dist/ai/tasks/roadmap.json +22 -0
  326. package/dist/ai/tasks/settings.json +34 -0
  327. package/dist/components/ContextMenu.d.ts +2 -2
  328. package/dist/components/ContextMenu.d.ts.map +1 -1
  329. package/dist/components/ContextMenu.js +3 -3
  330. package/dist/components/ContextMenu.js.map +1 -1
  331. package/dist/components/ElementType.d.ts.map +1 -1
  332. package/dist/components/ElementType.js +6 -4
  333. package/dist/components/ElementType.js.map +1 -1
  334. package/dist/components/Media.d.ts.map +1 -1
  335. package/dist/components/Media.js +6 -3
  336. package/dist/components/Media.js.map +1 -1
  337. package/dist/components/MediaVideoPlayer.d.ts +12 -0
  338. package/dist/components/MediaVideoPlayer.d.ts.map +1 -0
  339. package/dist/components/MediaVideoPlayer.js +246 -0
  340. package/dist/components/MediaVideoPlayer.js.map +1 -0
  341. package/dist/components/MediaVideoPlayer.module.scss +90 -0
  342. package/dist/components/Table.d.ts +34 -6
  343. package/dist/components/Table.d.ts.map +1 -1
  344. package/dist/components/Table.js +114 -30
  345. package/dist/components/Table.js.map +1 -1
  346. package/dist/components/Table.module.scss +174 -3
  347. package/dist/components/ThemeInit.d.ts.map +1 -1
  348. package/dist/components/ThemeInit.js +2 -1
  349. package/dist/components/ThemeInit.js.map +1 -1
  350. package/dist/components/Timeline.d.ts +1 -1
  351. package/dist/components/Timeline.d.ts.map +1 -1
  352. package/dist/components/Timeline.js +16 -52
  353. package/dist/components/Timeline.js.map +1 -1
  354. package/dist/data/emoji-data.json +0 -10
  355. package/dist/icons.d.ts.map +1 -1
  356. package/dist/icons.js +7 -2
  357. package/dist/icons.js.map +1 -1
  358. package/dist/index.d.ts +0 -1
  359. package/dist/index.d.ts.map +1 -1
  360. package/dist/index.js +0 -1
  361. package/dist/index.js.map +1 -1
  362. package/dist/modules/code/CodeBlock.impl.d.ts.map +1 -1
  363. package/dist/modules/code/CodeBlock.impl.js +11 -5
  364. package/dist/modules/code/CodeBlock.impl.js.map +1 -1
  365. package/dist/modules/seo/Schema.d.ts.map +1 -1
  366. package/dist/modules/seo/Schema.js +3 -4
  367. package/dist/modules/seo/Schema.js.map +1 -1
  368. package/dist/package.json +33 -3
  369. package/dist/server/og-url-validation.d.ts +10 -0
  370. package/dist/server/og-url-validation.d.ts.map +1 -0
  371. package/dist/server/og-url-validation.js +234 -0
  372. package/dist/server/og-url-validation.js.map +1 -0
  373. package/dist/server/og-utils.d.ts +5 -2
  374. package/dist/server/og-utils.d.ts.map +1 -1
  375. package/dist/server/og-utils.js +39 -14
  376. package/dist/server/og-utils.js.map +1 -1
  377. package/dist/utils/index.d.ts +1 -0
  378. package/dist/utils/index.d.ts.map +1 -1
  379. package/dist/utils/index.js +1 -0
  380. package/dist/utils/index.js.map +1 -1
  381. package/dist/utils/safe-html.d.ts +19 -0
  382. package/dist/utils/safe-html.d.ts.map +1 -0
  383. package/dist/utils/safe-html.js +43 -0
  384. package/dist/utils/safe-html.js.map +1 -0
  385. package/package.json +159 -127
  386. package/scripts/copy-files.js +103 -0
  387. package/scripts/generate-ai-spec.js +464 -0
  388. package/scripts/generate-emoji-data.js +128 -0
  389. package/scripts/init-agent.js +156 -0
  390. package/scripts/validate-ai-code.js +149 -0
  391. package/LICENSE.md +0 -21
  392. package/next-env.d.ts +0 -5
@@ -0,0 +1,23 @@
1
+ {
2
+ "id": "auth",
3
+ "title": "Auth flow",
4
+ "description": "Sign-up / login with social auth, email form, stacked dialog for OTP",
5
+ "components": [
6
+ "Column",
7
+ "Row",
8
+ "Grid",
9
+ "Heading",
10
+ "Text",
11
+ "Button",
12
+ "Input",
13
+ "PasswordInput",
14
+ "OTPInput",
15
+ "Dialog",
16
+ "Media",
17
+ "SmartLink",
18
+ "Line"
19
+ ],
20
+ "recipes": [],
21
+ "example": "examples/auth.tsx",
22
+ "gotchas": ["Card.interactive", "layout.shorthands", "color.tokens"]
23
+ }
@@ -0,0 +1,28 @@
1
+ {
2
+ "id": "chat",
3
+ "title": "Chat UI",
4
+ "description": "Message list with avatars, streaming indicator, input bar with emoji picker",
5
+ "components": [
6
+ "Column",
7
+ "Row",
8
+ "SplitView",
9
+ "Avatar",
10
+ "Text",
11
+ "Input",
12
+ "IconButton",
13
+ "EmojiPickerDropdown",
14
+ "Fade",
15
+ "Spinner",
16
+ "Kbd",
17
+ "User",
18
+ "Line"
19
+ ],
20
+ "recipes": [],
21
+ "example": "examples/chat.tsx",
22
+ "blocks": {
23
+ "manifest": "examples/blocks/manifest.json",
24
+ "primary": ["Chat1", "Feed3", "Sidebar4"],
25
+ "compose": ["Sidebar5", "Table1"]
26
+ },
27
+ "gotchas": ["Fade.edge", "Badge.duplicate", "layout.shorthands"]
28
+ }
@@ -0,0 +1,39 @@
1
+ {
2
+ "id": "dashboard",
3
+ "title": "Analytics dashboard",
4
+ "description": "KPI stat cards, charts area, recent-activity list",
5
+ "components": [
6
+ "Column",
7
+ "Row",
8
+ "Grid",
9
+ "Heading",
10
+ "Text",
11
+ "Background",
12
+ "CountFx",
13
+ "StatusIndicator",
14
+ "Table",
15
+ "SegmentedControl",
16
+ "Tag",
17
+ "Icon",
18
+ "RevealFx",
19
+ "Line"
20
+ ],
21
+ "recipes": ["reveal-stagger"],
22
+ "example": "examples/dashboard.tsx",
23
+ "blocks": {
24
+ "manifest": "examples/blocks/manifest.json",
25
+ "primary": ["Dashboard1", "Table1"],
26
+ "compose": ["Header1", "Sidebar1"]
27
+ },
28
+ "gotchas": [
29
+ "Card.interactive",
30
+ "CountFx.trigger",
31
+ "RevealFx.delay",
32
+ "layout.shorthands",
33
+ "LogoCloud.columns"
34
+ ],
35
+ "quality": {
36
+ "statCard": "Column surface recipe — not Card",
37
+ "kpiNumber": "CountFx or display-strong-s with viewport latch"
38
+ }
39
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "version": 1,
3
+ "tasks": [
4
+ { "id": "marketing-hero", "file": "tasks/marketing-hero.json", "priority": 1 },
5
+ { "id": "pricing", "file": "tasks/pricing.json", "priority": 2 },
6
+ { "id": "settings", "file": "tasks/settings.json", "priority": 3 },
7
+ { "id": "dashboard", "file": "tasks/dashboard.json", "priority": 4 },
8
+ { "id": "chat", "file": "tasks/chat.json", "priority": 5 },
9
+ { "id": "auth", "file": "tasks/auth.json", "priority": 6 },
10
+ { "id": "roadmap", "file": "tasks/roadmap.json", "priority": 7 }
11
+ ]
12
+ }
@@ -0,0 +1,38 @@
1
+ {
2
+ "id": "marketing-hero",
3
+ "title": "Marketing hero",
4
+ "description": "Headline with text effect, CTA pair, social proof logos, background effect",
5
+ "components": [
6
+ "Column",
7
+ "Row",
8
+ "Heading",
9
+ "Text",
10
+ "Button",
11
+ "Background",
12
+ "RevealFx",
13
+ "LetterFx",
14
+ "LogoCloud",
15
+ "Grid",
16
+ "Line"
17
+ ],
18
+ "recipes": ["hero-glow-dots", "reveal-stagger"],
19
+ "example": "examples/marketing-hero.tsx",
20
+ "blocks": {
21
+ "manifest": "examples/blocks/manifest.json",
22
+ "primary": ["Waitlist1", "Header1", "Footer4"],
23
+ "patterns": ["Background6", "Footer3"]
24
+ },
25
+ "gotchas": [
26
+ "Background.gradient.width",
27
+ "Background.absolute",
28
+ "section.gaps",
29
+ "heading.scale",
30
+ "animation.budget",
31
+ "overflow.hero"
32
+ ],
33
+ "quality": {
34
+ "sectionGap": "104",
35
+ "heroHeading": "display-strong-l",
36
+ "eyebrow": "label-default-s onBackground=\"brand-medium\""
37
+ }
38
+ }
@@ -0,0 +1,42 @@
1
+ {
2
+ "id": "pricing",
3
+ "title": "Pricing page",
4
+ "description": "Three tiers, highlighted middle tier, feature comparison table, FAQ accordion",
5
+ "components": [
6
+ "Column",
7
+ "Row",
8
+ "Grid",
9
+ "Heading",
10
+ "Text",
11
+ "Button",
12
+ "Background",
13
+ "MatrixFx",
14
+ "BlobFx",
15
+ "RevealFx",
16
+ "CountFx",
17
+ "SegmentedControl",
18
+ "Table",
19
+ "AccordionGroup",
20
+ "Tag",
21
+ "Icon"
22
+ ],
23
+ "recipes": ["hero-matrix-strip", "highlighted-card-glow", "blob-ambient-panel"],
24
+ "example": "examples/pricing.tsx",
25
+ "blocks": {
26
+ "manifest": "examples/blocks/manifest.json",
27
+ "patterns": ["Header2", "Footer2"]
28
+ },
29
+ "gotchas": [
30
+ "Card.interactive",
31
+ "RevealFx.delay",
32
+ "LogoCloud.columns",
33
+ "layout.shorthands",
34
+ "section.gaps",
35
+ "animation.budget"
36
+ ],
37
+ "quality": {
38
+ "sectionGap": "104",
39
+ "tierPanel": "Column background=\"surface\" border radius=\"l\" — not Card",
40
+ "highlightedTier": "border=\"brand-alpha-medium\" + Background gradient glow"
41
+ }
42
+ }
@@ -0,0 +1,22 @@
1
+ {
2
+ "id": "roadmap",
3
+ "title": "Product roadmap",
4
+ "description": "Kanban-style roadmap with status columns and task cards",
5
+ "components": [
6
+ "Column",
7
+ "Row",
8
+ "Heading",
9
+ "Text",
10
+ "Card",
11
+ "StatusIndicator",
12
+ "User",
13
+ "Scroller"
14
+ ],
15
+ "recipes": [],
16
+ "example": "examples/blocks/Roadmap1.tsx",
17
+ "blocks": {
18
+ "manifest": "examples/blocks/manifest.json",
19
+ "primary": ["Roadmap1"]
20
+ },
21
+ "gotchas": ["Card.interactive", "layout.shorthands", "heading.scale"]
22
+ }
@@ -0,0 +1,34 @@
1
+ {
2
+ "id": "settings",
3
+ "title": "Settings page",
4
+ "description": "Sidebar sections, profile form, danger zone",
5
+ "components": [
6
+ "Column",
7
+ "Row",
8
+ "SplitView",
9
+ "Heading",
10
+ "Text",
11
+ "Button",
12
+ "Input",
13
+ "Select",
14
+ "Switch",
15
+ "Checkbox",
16
+ "Slider",
17
+ "MediaUpload",
18
+ "Avatar",
19
+ "Line",
20
+ "Tag"
21
+ ],
22
+ "recipes": [],
23
+ "example": "examples/settings.tsx",
24
+ "gotchas": [
25
+ "Card.interactive",
26
+ "layout.shorthands",
27
+ "color.tokens",
28
+ "layout.defaults"
29
+ ],
30
+ "quality": {
31
+ "surfaceRecipe": "background=\"surface\" border=\"neutral-alpha-weak\" radius=\"l\" padding=\"24\"",
32
+ "dangerZone": "border=\"danger-alpha-medium\" on danger actions only"
33
+ }
34
+ }
package/dist/AGENTS.md ADDED
@@ -0,0 +1,53 @@
1
+ # @once-ui-system/core — agent harness
2
+
3
+ This package ships an agent-first codegen harness under `ai/`. Use it when **writing Once UI code**, not full MDX documentation pages.
4
+
5
+ ## Entry point
6
+
7
+ ```
8
+ @once-ui-system/core/ai/manifest.json
9
+ ```
10
+
11
+ Or from disk:
12
+
13
+ ```
14
+ node_modules/@once-ui-system/core/ai/manifest.json
15
+ ```
16
+
17
+ ## Bootstrap workflow
18
+
19
+ 1. Read `ai/manifest.json`
20
+ 2. Load bootstrap files: `ai/rules.compact.md` + `ai/catalog.json` (~6KB)
21
+ 3. Match intent via `ai/tasks/index.json` → e.g. `ai/tasks/pricing.json`
22
+ 4. Fetch component slices listed in the task bundle (`ai/components/*.json`)
23
+ 5. Read the gold example referenced by the task; for production fidelity, read Pro blocks from `ai/examples/blocks/manifest.json`
24
+ 6. Validate generated code: `npx once-ui-validate-ai-code path/to/file.tsx`
25
+
26
+ ## npm exports
27
+
28
+ ```tsx
29
+ // Readable paths (version-pinned to your install)
30
+ import manifest from '@once-ui-system/core/ai/manifest.json';
31
+ ```
32
+
33
+ ```bash
34
+ # One-time project setup (writes AGENTS.md + Cursor rule in consumer app)
35
+ npx once-ui-init-agent
36
+ ```
37
+
38
+ ## Remote fallback
39
+
40
+ If you cannot read `node_modules`, use the docs host (may not match your installed version exactly):
41
+
42
+ - https://docs.once-ui.com/ai/manifest.json
43
+ - https://docs.once-ui.com/ai/rules.compact.md
44
+ - https://docs.once-ui.com/once-ui/ai-coding
45
+
46
+ ## Key rules (summary)
47
+
48
+ - Use `Column` / `Row`, not `Flex` unless direction changes at breakpoints
49
+ - Use `fill`, not `fillWidth fillHeight`; use `center`, not `horizontal="center" vertical="center"`
50
+ - Static panels: `Column background="surface" border="neutral-alpha-weak" radius="l" padding="24"`
51
+ - `Card` is interactive only (`href` or `onClick`)
52
+
53
+ Full rules: `@once-ui-system/core/ai/rules.compact.md`
package/dist/README.md CHANGED
@@ -35,6 +35,33 @@ Learn how to set up and build with Once UI at [docs.once-ui.com](https://docs.on
35
35
  npm install @once-ui-system/core
36
36
  ```
37
37
 
38
+ ## AI codegen harness
39
+
40
+ This package includes an agent-first harness under `ai/` for generating Once UI code with minimal context (~6–10KB per task).
41
+
42
+ | Resource | Path |
43
+ |----------|------|
44
+ | Entry point | `@once-ui-system/core/ai/manifest.json` |
45
+ | Compact rules | `@once-ui-system/core/ai/rules.compact.md` |
46
+ | Component catalog | `@once-ui-system/core/ai/catalog.json` |
47
+ | Task bundles | `@once-ui-system/core/ai/tasks/index.json` |
48
+
49
+ **One-time setup in your app** (writes project `AGENTS.md` + Cursor rule):
50
+
51
+ ```bash
52
+ npx once-ui-init-agent
53
+ ```
54
+
55
+ **Validate generated code:**
56
+
57
+ ```bash
58
+ npx once-ui-validate-ai-code src/app/page.tsx
59
+ ```
60
+
61
+ Full guide: [docs.once-ui.com/once-ui/ai-coding](https://docs.once-ui.com/once-ui/ai-coding)
62
+
63
+ Machine-readable discovery: see the `onceUi` field in this package's `package.json`.
64
+
38
65
  ## Authors
39
66
 
40
67
  Built and maintained by [**Lorant One**](https://lorant.one).
@@ -0,0 +1,27 @@
1
+ ---
2
+ description: Load Once UI agent harness before generating UI code
3
+ globs: "**/*.{tsx,jsx}"
4
+ alwaysApply: false
5
+ ---
6
+
7
+ # Once UI codegen harness
8
+
9
+ Before generating or editing Once UI UI code in this project:
10
+
11
+ 1. Read `@once-ui-system/core/ai/manifest.json` (or `node_modules/@once-ui-system/core/ai/manifest.json`)
12
+ 2. Load bootstrap files from the manifest: `rules.compact.md` + `catalog.json`
13
+ 3. Resolve intent via `ai/tasks/index.json` → fetch the matching task bundle
14
+ 4. Fetch only the component slices listed in that task (`ai/components/*.json`)
15
+ 5. Read the task's gold example; for production layouts, read matching Pro blocks from `ai/examples/blocks/manifest.json`
16
+ 6. Validate output: `npx once-ui-validate-ai-code path/to/file.tsx`
17
+
18
+ ## Do not
19
+
20
+ - Use full documentation MDX pages for codegen (too large; use the harness)
21
+ - Use `Flex direction="column"` when `Column` works; same for `Row`
22
+ - Use `fillWidth fillHeight` when `fill` works
23
+ - Use `Card` for static panels (use the surface recipe on `Column`)
24
+
25
+ ## Remote fallback
26
+
27
+ https://docs.once-ui.com/ai/manifest.json