@decantr/content 3.8.0

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 (593) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +58 -0
  3. package/archetypes/about-hybrid.json +104 -0
  4. package/archetypes/admin-analytics.json +63 -0
  5. package/archetypes/admin-moderation.json +87 -0
  6. package/archetypes/admin-overview.json +77 -0
  7. package/archetypes/agent-orchestrator.json +178 -0
  8. package/archetypes/agent-studio.json +154 -0
  9. package/archetypes/ai-chatbot.json +121 -0
  10. package/archetypes/ai-transparency.json +140 -0
  11. package/archetypes/alert-manager-pro.json +154 -0
  12. package/archetypes/api-console.json +130 -0
  13. package/archetypes/api-reference.json +95 -0
  14. package/archetypes/appointment-center.json +113 -0
  15. package/archetypes/asset-browser.json +90 -0
  16. package/archetypes/audit-center.json +103 -0
  17. package/archetypes/auth-flow-enterprise.json +140 -0
  18. package/archetypes/auth-flow.json +101 -0
  19. package/archetypes/auth-full.json +199 -0
  20. package/archetypes/auth-gateway.json +76 -0
  21. package/archetypes/billing-portal.json +75 -0
  22. package/archetypes/billing.json +74 -0
  23. package/archetypes/budget-planner.json +63 -0
  24. package/archetypes/budget-transparency.json +117 -0
  25. package/archetypes/buyer-dashboard.json +124 -0
  26. package/archetypes/changelog-center.json +96 -0
  27. package/archetypes/character-library.json +113 -0
  28. package/archetypes/citation-tools.json +98 -0
  29. package/archetypes/cloud-infrastructure.json +253 -0
  30. package/archetypes/cloud-marketing.json +111 -0
  31. package/archetypes/collaboration-hub.json +87 -0
  32. package/archetypes/community-feed.json +131 -0
  33. package/archetypes/config-editor.json +136 -0
  34. package/archetypes/contact.json +82 -0
  35. package/archetypes/content-author.json +121 -0
  36. package/archetypes/content-editor.json +82 -0
  37. package/archetypes/content-newsletter.json +111 -0
  38. package/archetypes/content-reader.json +135 -0
  39. package/archetypes/content-site.json +112 -0
  40. package/archetypes/contract-center.json +120 -0
  41. package/archetypes/cook-mode.json +57 -0
  42. package/archetypes/copilot-settings.json +87 -0
  43. package/archetypes/copilot-workspace.json +110 -0
  44. package/archetypes/creator-content.json +128 -0
  45. package/archetypes/creator-dashboard.json +105 -0
  46. package/archetypes/creator-earnings.json +100 -0
  47. package/archetypes/creator-subscribers.json +99 -0
  48. package/archetypes/creator-tiers.json +76 -0
  49. package/archetypes/crm-dashboard.json +199 -0
  50. package/archetypes/crm-email.json +88 -0
  51. package/archetypes/crm-intelligence.json +85 -0
  52. package/archetypes/crm-meetings.json +95 -0
  53. package/archetypes/customer-loyalty.json +75 -0
  54. package/archetypes/customer-management.json +76 -0
  55. package/archetypes/daily-operations.json +62 -0
  56. package/archetypes/dashboard-core.json +87 -0
  57. package/archetypes/data-repository.json +81 -0
  58. package/archetypes/deal-workspace.json +126 -0
  59. package/archetypes/doc-browser.json +111 -0
  60. package/archetypes/document-editor.json +147 -0
  61. package/archetypes/document-vault.json +119 -0
  62. package/archetypes/ecommerce-admin.json +138 -0
  63. package/archetypes/ecommerce-checkout.json +57 -0
  64. package/archetypes/ecommerce.json +138 -0
  65. package/archetypes/emissions-dashboard.json +136 -0
  66. package/archetypes/engagement-hub.json +157 -0
  67. package/archetypes/eval-suite.json +142 -0
  68. package/archetypes/event-discovery.json +130 -0
  69. package/archetypes/experiment-tracker.json +83 -0
  70. package/archetypes/fan-checkout.json +107 -0
  71. package/archetypes/fan-library.json +99 -0
  72. package/archetypes/fan-storefront.json +106 -0
  73. package/archetypes/financial-dashboard.json +127 -0
  74. package/archetypes/game-catalog.json +120 -0
  75. package/archetypes/gaming-community.json +196 -0
  76. package/archetypes/governance-center.json +82 -0
  77. package/archetypes/health-records.json +111 -0
  78. package/archetypes/instrument-booking.json +82 -0
  79. package/archetypes/inventory-supplies.json +72 -0
  80. package/archetypes/investment-tracker.json +82 -0
  81. package/archetypes/investor-portal.json +124 -0
  82. package/archetypes/job-monitor.json +109 -0
  83. package/archetypes/kitchen-display.json +58 -0
  84. package/archetypes/lab-notebook.json +83 -0
  85. package/archetypes/landing-hero.json +145 -0
  86. package/archetypes/landing-legal.json +101 -0
  87. package/archetypes/landing-resources.json +127 -0
  88. package/archetypes/launch-campaign.json +393 -0
  89. package/archetypes/legal.json +107 -0
  90. package/archetypes/listing-browser.json +160 -0
  91. package/archetypes/log-explorer-pro.json +106 -0
  92. package/archetypes/log-viewer.json +123 -0
  93. package/archetypes/maintenance-center.json +116 -0
  94. package/archetypes/marketing-ai-studio.json +117 -0
  95. package/archetypes/marketing-civic.json +116 -0
  96. package/archetypes/marketing-climate.json +94 -0
  97. package/archetypes/marketing-content.json +109 -0
  98. package/archetypes/marketing-copilot.json +100 -0
  99. package/archetypes/marketing-creator.json +132 -0
  100. package/archetypes/marketing-crm.json +96 -0
  101. package/archetypes/marketing-deal-room.json +100 -0
  102. package/archetypes/marketing-devtool.json +139 -0
  103. package/archetypes/marketing-docs.json +92 -0
  104. package/archetypes/marketing-ecommerce.json +69 -0
  105. package/archetypes/marketing-esports.json +89 -0
  106. package/archetypes/marketing-events.json +89 -0
  107. package/archetypes/marketing-finance.json +69 -0
  108. package/archetypes/marketing-fractional.json +74 -0
  109. package/archetypes/marketing-health.json +100 -0
  110. package/archetypes/marketing-landing.json +65 -0
  111. package/archetypes/marketing-legal.json +86 -0
  112. package/archetypes/marketing-marketplace.json +121 -0
  113. package/archetypes/marketing-observability.json +95 -0
  114. package/archetypes/marketing-pipeline.json +108 -0
  115. package/archetypes/marketing-platform.json +129 -0
  116. package/archetypes/marketing-producer.json +88 -0
  117. package/archetypes/marketing-productivity.json +139 -0
  118. package/archetypes/marketing-realestate.json +101 -0
  119. package/archetypes/marketing-recipe.json +69 -0
  120. package/archetypes/marketing-research.json +72 -0
  121. package/archetypes/marketing-restaurant.json +53 -0
  122. package/archetypes/marketing-saas-v2.json +75 -0
  123. package/archetypes/marketing-saas.json +119 -0
  124. package/archetypes/marketing-swipecircle.json +185 -0
  125. package/archetypes/marketing-video-studio.json +121 -0
  126. package/archetypes/marketplace-messaging.json +106 -0
  127. package/archetypes/matter-management.json +104 -0
  128. package/archetypes/meeting-archive.json +131 -0
  129. package/archetypes/menu-management.json +73 -0
  130. package/archetypes/metrics-monitor.json +164 -0
  131. package/archetypes/metrics-overview-dashboard.json +112 -0
  132. package/archetypes/music-workspace.json +104 -0
  133. package/archetypes/notifications.json +68 -0
  134. package/archetypes/offset-marketplace.json +134 -0
  135. package/archetypes/onboarding-wizard.json +203 -0
  136. package/archetypes/order-fulfillment.json +83 -0
  137. package/archetypes/order-management.json +71 -0
  138. package/archetypes/organizer-dashboard.json +146 -0
  139. package/archetypes/owner-dashboard.json +112 -0
  140. package/archetypes/ownership-dashboard.json +97 -0
  141. package/archetypes/patient-dashboard.json +142 -0
  142. package/archetypes/pipeline-builder.json +116 -0
  143. package/archetypes/pm-financials.json +126 -0
  144. package/archetypes/portfolio-about.json +85 -0
  145. package/archetypes/portfolio-blog.json +71 -0
  146. package/archetypes/portfolio-overview.json +76 -0
  147. package/archetypes/portfolio-showcase.json +71 -0
  148. package/archetypes/portfolio.json +122 -0
  149. package/archetypes/product-management.json +84 -0
  150. package/archetypes/project-library.json +111 -0
  151. package/archetypes/prompt-director.json +118 -0
  152. package/archetypes/prompt-library.json +135 -0
  153. package/archetypes/property-manager.json +158 -0
  154. package/archetypes/qa-workflow.json +116 -0
  155. package/archetypes/recipe-browser.json +83 -0
  156. package/archetypes/recipe-community.json +126 -0
  157. package/archetypes/recipe-creator.json +71 -0
  158. package/archetypes/recipe-social.json +95 -0
  159. package/archetypes/recipefork-ai-kitchen.json +95 -0
  160. package/archetypes/recipefork-auth.json +79 -0
  161. package/archetypes/recipefork-cookbooks.json +104 -0
  162. package/archetypes/recipefork-landing.json +101 -0
  163. package/archetypes/recipefork-profile.json +180 -0
  164. package/archetypes/recipefork-recipe-authoring.json +216 -0
  165. package/archetypes/recipefork-recipe-detail.json +139 -0
  166. package/archetypes/recipefork-social.json +103 -0
  167. package/archetypes/registry-browser.json +121 -0
  168. package/archetypes/render-monitor.json +114 -0
  169. package/archetypes/reporting-center.json +107 -0
  170. package/archetypes/research-workspace.json +127 -0
  171. package/archetypes/restaurant-floor.json +74 -0
  172. package/archetypes/review-system.json +84 -0
  173. package/archetypes/saas-analytics.json +69 -0
  174. package/archetypes/saas-billing-v2.json +77 -0
  175. package/archetypes/saas-dashboard.json +127 -0
  176. package/archetypes/saas-overview.json +77 -0
  177. package/archetypes/sample-inventory.json +80 -0
  178. package/archetypes/scrim-scheduler.json +103 -0
  179. package/archetypes/search-hub.json +87 -0
  180. package/archetypes/secondary-market.json +83 -0
  181. package/archetypes/seller-dashboard.json +169 -0
  182. package/archetypes/server-station.json +61 -0
  183. package/archetypes/service-requests.json +141 -0
  184. package/archetypes/session-rooms.json +92 -0
  185. package/archetypes/settings-full.json +164 -0
  186. package/archetypes/settings.json +67 -0
  187. package/archetypes/source-catalog.json +116 -0
  188. package/archetypes/spatial-workspace.json +115 -0
  189. package/archetypes/sponsor-dashboard.json +103 -0
  190. package/archetypes/storefront-browse.json +97 -0
  191. package/archetypes/supply-chain.json +112 -0
  192. package/archetypes/swipe-feed.json +469 -0
  193. package/archetypes/team-management.json +95 -0
  194. package/archetypes/team-operations.json +131 -0
  195. package/archetypes/team-workspace.json +71 -0
  196. package/archetypes/telehealth-room.json +78 -0
  197. package/archetypes/tenant-manager.json +129 -0
  198. package/archetypes/tenant-payments.json +105 -0
  199. package/archetypes/tenant-portal.json +135 -0
  200. package/archetypes/tenant-switcher-dashboard.json +154 -0
  201. package/archetypes/terminal-home.json +127 -0
  202. package/archetypes/ticket-checkout.json +84 -0
  203. package/archetypes/tool-registry.json +111 -0
  204. package/archetypes/trace-explorer.json +113 -0
  205. package/archetypes/trace-viewer.json +112 -0
  206. package/archetypes/track-library.json +90 -0
  207. package/archetypes/transaction-history.json +77 -0
  208. package/archetypes/transformation-editor.json +117 -0
  209. package/archetypes/usage-billing.json +146 -0
  210. package/archetypes/user-dashboard.json +155 -0
  211. package/archetypes/video-editor.json +158 -0
  212. package/archetypes/vod-review.json +97 -0
  213. package/archetypes/webhook-manager.json +108 -0
  214. package/archetypes/workspace-home.json +105 -0
  215. package/archetypes/workspace-settings.json +140 -0
  216. package/blueprints/agent-marketplace.json +222 -0
  217. package/blueprints/agent-studio.json +291 -0
  218. package/blueprints/ai-copilot-shell.json +163 -0
  219. package/blueprints/ai-native-crm.json +269 -0
  220. package/blueprints/ai-video-studio.json +93 -0
  221. package/blueprints/carbon-ai-portal.json +252 -0
  222. package/blueprints/civic-platform.json +91 -0
  223. package/blueprints/climate-dashboard.json +90 -0
  224. package/blueprints/cloud-platform.json +219 -0
  225. package/blueprints/content-site.json +110 -0
  226. package/blueprints/content-studio.json +120 -0
  227. package/blueprints/creator-monetization-platform.json +373 -0
  228. package/blueprints/data-pipeline-studio.json +263 -0
  229. package/blueprints/deal-room.json +88 -0
  230. package/blueprints/ecommerce-admin.json +253 -0
  231. package/blueprints/ecommerce.json +242 -0
  232. package/blueprints/esports-hq.json +116 -0
  233. package/blueprints/event-community-hub.json +251 -0
  234. package/blueprints/financial-dashboard.json +237 -0
  235. package/blueprints/fractional-ownership.json +89 -0
  236. package/blueprints/gaming-platform.json +171 -0
  237. package/blueprints/health-wellness-portal.json +252 -0
  238. package/blueprints/knowledge-base.json +176 -0
  239. package/blueprints/legal-research.json +90 -0
  240. package/blueprints/multi-tenant-platform.json +257 -0
  241. package/blueprints/observability-platform.json +275 -0
  242. package/blueprints/portfolio.json +164 -0
  243. package/blueprints/producer-studio.json +156 -0
  244. package/blueprints/product-landing.json +112 -0
  245. package/blueprints/property-management-portal.json +384 -0
  246. package/blueprints/realtime-collaboration-workspace.json +300 -0
  247. package/blueprints/recipe-community.json +259 -0
  248. package/blueprints/recipefork.json +194 -0
  249. package/blueprints/registry-platform.json +204 -0
  250. package/blueprints/research-lab.json +92 -0
  251. package/blueprints/restaurant-ops.json +104 -0
  252. package/blueprints/retro-launch-campaign.json +205 -0
  253. package/blueprints/saas-dashboard.json +246 -0
  254. package/blueprints/spatial-collaboration.json +172 -0
  255. package/blueprints/swipecircle.json +253 -0
  256. package/blueprints/terminal-dashboard.json +282 -0
  257. package/blueprints/two-sided-marketplace.json +293 -0
  258. package/dist/index.d.ts +178 -0
  259. package/dist/index.js +582 -0
  260. package/dist/index.js.map +1 -0
  261. package/package.json +75 -0
  262. package/patterns/account-settings.json +149 -0
  263. package/patterns/activity-feed.json +154 -0
  264. package/patterns/adaptive-density-panel.json +130 -0
  265. package/patterns/agent-handoff-zone.json +97 -0
  266. package/patterns/agent-swarm-canvas.json +136 -0
  267. package/patterns/agent-timeline.json +119 -0
  268. package/patterns/alert-rule-builder.json +127 -0
  269. package/patterns/ambient-status-ring.json +125 -0
  270. package/patterns/api-explorer.json +131 -0
  271. package/patterns/api-key-row.json +119 -0
  272. package/patterns/ar-annotation.json +137 -0
  273. package/patterns/arrangement-canvas.json +72 -0
  274. package/patterns/ascii-chart.json +138 -0
  275. package/patterns/audit-trail.json +123 -0
  276. package/patterns/auth-form.json +209 -0
  277. package/patterns/avatar-grid-tile.json +118 -0
  278. package/patterns/backer-progress-console.json +137 -0
  279. package/patterns/backer-wall-ticker.json +127 -0
  280. package/patterns/before-after.json +105 -0
  281. package/patterns/block-toolbar.json +129 -0
  282. package/patterns/blueprint-anatomy.json +112 -0
  283. package/patterns/blueprint-launch-hero.json +113 -0
  284. package/patterns/booking-calendar.json +125 -0
  285. package/patterns/bottom-tab-bar.json +117 -0
  286. package/patterns/breadcrumb-nav.json +111 -0
  287. package/patterns/budget-sankey.json +103 -0
  288. package/patterns/calendar-view.json +143 -0
  289. package/patterns/campaign-marquee-hero.json +167 -0
  290. package/patterns/cap-table.json +121 -0
  291. package/patterns/card-grid.json +202 -0
  292. package/patterns/case-brief-card.json +113 -0
  293. package/patterns/character-sheet.json +102 -0
  294. package/patterns/chart-grid.json +129 -0
  295. package/patterns/chat-header.json +105 -0
  296. package/patterns/chat-input.json +106 -0
  297. package/patterns/chat-message.json +122 -0
  298. package/patterns/chat-thread.json +120 -0
  299. package/patterns/checklist-card.json +96 -0
  300. package/patterns/checkout-flow.json +148 -0
  301. package/patterns/chip-multiselect.json +118 -0
  302. package/patterns/citation-graph.json +118 -0
  303. package/patterns/command-palette.json +115 -0
  304. package/patterns/command-rail.json +123 -0
  305. package/patterns/comment-thread.json +155 -0
  306. package/patterns/comparison-table.json +121 -0
  307. package/patterns/contact-form.json +135 -0
  308. package/patterns/content-card-grid.json +151 -0
  309. package/patterns/content-detail-hero.json +129 -0
  310. package/patterns/content-feed.json +141 -0
  311. package/patterns/content-uploader.json +137 -0
  312. package/patterns/continue-screen-cta.json +135 -0
  313. package/patterns/contract-diff.json +110 -0
  314. package/patterns/contract-explorer.json +119 -0
  315. package/patterns/conversation-list.json +109 -0
  316. package/patterns/creator-profile.json +127 -0
  317. package/patterns/cta-banner.json +103 -0
  318. package/patterns/cta-section.json +122 -0
  319. package/patterns/cta.json +124 -0
  320. package/patterns/data-source-connector.json +131 -0
  321. package/patterns/data-table.json +138 -0
  322. package/patterns/dataset-card.json +127 -0
  323. package/patterns/daw-transport-bar.json +66 -0
  324. package/patterns/deal-pipeline-board.json +124 -0
  325. package/patterns/deal-stage-gates.json +102 -0
  326. package/patterns/depth-layered-canvas.json +105 -0
  327. package/patterns/detail-header.json +140 -0
  328. package/patterns/diff-view.json +122 -0
  329. package/patterns/dividend-ledger.json +120 -0
  330. package/patterns/doc-editor.json +147 -0
  331. package/patterns/document-vault.json +129 -0
  332. package/patterns/drag-sort-list.json +119 -0
  333. package/patterns/earnings-dashboard.json +132 -0
  334. package/patterns/emissions-sankey.json +113 -0
  335. package/patterns/emoji-reaction-bar.json +115 -0
  336. package/patterns/esports-matchday-command.json +132 -0
  337. package/patterns/eval-dashboard.json +131 -0
  338. package/patterns/expense-tracker.json +130 -0
  339. package/patterns/featured-launchpad-list.json +114 -0
  340. package/patterns/features.json +118 -0
  341. package/patterns/file-browser.json +148 -0
  342. package/patterns/filter-bar.json +146 -0
  343. package/patterns/footer.json +115 -0
  344. package/patterns/form-sections.json +180 -0
  345. package/patterns/form.json +190 -0
  346. package/patterns/founder-comic-strip.json +126 -0
  347. package/patterns/generative-card-grid.json +130 -0
  348. package/patterns/gesture-control-overlay.json +134 -0
  349. package/patterns/governance-ballot.json +126 -0
  350. package/patterns/help-modal.json +155 -0
  351. package/patterns/hero-split.json +125 -0
  352. package/patterns/hero.json +227 -0
  353. package/patterns/holographic-control-bar.json +114 -0
  354. package/patterns/hotkey-bar.json +97 -0
  355. package/patterns/how-it-works.json +118 -0
  356. package/patterns/identity-summary.json +115 -0
  357. package/patterns/instrument-schedule.json +131 -0
  358. package/patterns/intake-form-wizard.json +134 -0
  359. package/patterns/intent-radar.json +115 -0
  360. package/patterns/json-viewer.json +129 -0
  361. package/patterns/kanban-board.json +133 -0
  362. package/patterns/kds-ticket-rail.json +133 -0
  363. package/patterns/kpi-grid.json +123 -0
  364. package/patterns/launch-update-log.json +129 -0
  365. package/patterns/launchpad-flow.json +107 -0
  366. package/patterns/leaderboard.json +143 -0
  367. package/patterns/lease-manager.json +129 -0
  368. package/patterns/legal-prose.json +120 -0
  369. package/patterns/live-room-stage.json +63 -0
  370. package/patterns/log-stream.json +150 -0
  371. package/patterns/logo-strip.json +93 -0
  372. package/patterns/maintenance-board.json +127 -0
  373. package/patterns/maintenance-ticket.json +156 -0
  374. package/patterns/map-view.json +140 -0
  375. package/patterns/match-celebration.json +133 -0
  376. package/patterns/matter-card.json +113 -0
  377. package/patterns/mention-popup.json +85 -0
  378. package/patterns/metric-gauge.json +141 -0
  379. package/patterns/mixer-console.json +69 -0
  380. package/patterns/mobile-profile-hero.json +138 -0
  381. package/patterns/moderation-queue-item.json +129 -0
  382. package/patterns/morphing-topology.json +113 -0
  383. package/patterns/namespace-badge.json +93 -0
  384. package/patterns/nav-header.json +110 -0
  385. package/patterns/neural-feedback-loop.json +124 -0
  386. package/patterns/notebook-entry.json +129 -0
  387. package/patterns/notification-center.json +136 -0
  388. package/patterns/offset-cart.json +109 -0
  389. package/patterns/onboarding-wizard.json +130 -0
  390. package/patterns/org-governance-panel.json +101 -0
  391. package/patterns/page-tree.json +143 -0
  392. package/patterns/payment-history.json +130 -0
  393. package/patterns/payout-settings.json +130 -0
  394. package/patterns/permission-matrix.json +129 -0
  395. package/patterns/petition-card.json +106 -0
  396. package/patterns/pipeline-cards.json +99 -0
  397. package/patterns/player-form-tracker.json +111 -0
  398. package/patterns/pledge-checkout-panel.json +145 -0
  399. package/patterns/pnl-dashboard.json +116 -0
  400. package/patterns/post-list.json +147 -0
  401. package/patterns/presence-avatars.json +129 -0
  402. package/patterns/press-kit-shelf.json +132 -0
  403. package/patterns/pricing-usage.json +118 -0
  404. package/patterns/pricing.json +137 -0
  405. package/patterns/producer-split-workbench.json +57 -0
  406. package/patterns/product-box-spec-panel.json +126 -0
  407. package/patterns/product-card.json +120 -0
  408. package/patterns/product-grid.json +140 -0
  409. package/patterns/progress-bar.json +124 -0
  410. package/patterns/prompt-playground.json +129 -0
  411. package/patterns/property-card.json +112 -0
  412. package/patterns/property-detail.json +124 -0
  413. package/patterns/property-grid.json +137 -0
  414. package/patterns/prose-section.json +102 -0
  415. package/patterns/protocol-step.json +128 -0
  416. package/patterns/prototype-demo-bezel.json +137 -0
  417. package/patterns/qa-thread.json +109 -0
  418. package/patterns/quick-start.json +88 -0
  419. package/patterns/recipefork-activity-feed.json +51 -0
  420. package/patterns/recipefork-chef-ingredients-display.json +48 -0
  421. package/patterns/recipefork-chef-ingredients-editor.json +52 -0
  422. package/patterns/recipefork-chef-instruction-editor.json +59 -0
  423. package/patterns/recipefork-chef-instructions-display.json +54 -0
  424. package/patterns/recipefork-cookbook-assignment.json +51 -0
  425. package/patterns/recipefork-cooking-tips-display.json +43 -0
  426. package/patterns/recipefork-cooking-tips-editor.json +46 -0
  427. package/patterns/recipefork-fork-provenance.json +50 -0
  428. package/patterns/recipefork-kitchen-chat.json +103 -0
  429. package/patterns/recipefork-photo-generator.json +123 -0
  430. package/patterns/recipefork-presentation-display.json +45 -0
  431. package/patterns/recipefork-presentation-editor.json +52 -0
  432. package/patterns/recipefork-recipe-card.json +123 -0
  433. package/patterns/recipefork-recipe-metadata-form.json +58 -0
  434. package/patterns/recipefork-recipe-mode-switch.json +52 -0
  435. package/patterns/recipefork-recipe-story-editor.json +51 -0
  436. package/patterns/recipefork-simple-recipe-editor.json +49 -0
  437. package/patterns/redline-track-changes.json +113 -0
  438. package/patterns/registry-discovery-cta-grid.json +93 -0
  439. package/patterns/registry-link-list.json +118 -0
  440. package/patterns/relationship-graph.json +127 -0
  441. package/patterns/remote-cursor.json +103 -0
  442. package/patterns/render-queue.json +102 -0
  443. package/patterns/rent-reminder.json +140 -0
  444. package/patterns/rent-roll.json +112 -0
  445. package/patterns/reputation-badge.json +111 -0
  446. package/patterns/retro-table.json +128 -0
  447. package/patterns/reward-tier-selector.json +137 -0
  448. package/patterns/sample-tracker.json +127 -0
  449. package/patterns/scene-storyboard.json +104 -0
  450. package/patterns/scope-breakdown.json +108 -0
  451. package/patterns/scoreboard-live.json +116 -0
  452. package/patterns/scrim-calendar.json +114 -0
  453. package/patterns/search-filter-bar.json +141 -0
  454. package/patterns/secure-document-viewer.json +107 -0
  455. package/patterns/service-catalog.json +94 -0
  456. package/patterns/service-map.json +133 -0
  457. package/patterns/session-inspector.json +62 -0
  458. package/patterns/session-manager.json +89 -0
  459. package/patterns/settings-nav.json +106 -0
  460. package/patterns/share-modal.json +157 -0
  461. package/patterns/share-quest-panel.json +134 -0
  462. package/patterns/shot-grid.json +104 -0
  463. package/patterns/skeleton-loader.json +114 -0
  464. package/patterns/slash-command.json +80 -0
  465. package/patterns/sparkline-cell.json +103 -0
  466. package/patterns/spatial-card-stack.json +133 -0
  467. package/patterns/spatial-presence-ring.json +103 -0
  468. package/patterns/split-calculator.json +104 -0
  469. package/patterns/split-pane.json +112 -0
  470. package/patterns/stats-bar.json +125 -0
  471. package/patterns/stats-detail.json +102 -0
  472. package/patterns/stats-overview.json +132 -0
  473. package/patterns/stats-section.json +90 -0
  474. package/patterns/status-bar.json +101 -0
  475. package/patterns/status-board.json +92 -0
  476. package/patterns/stem-browser.json +58 -0
  477. package/patterns/stem-stack.json +101 -0
  478. package/patterns/stepper.json +115 -0
  479. package/patterns/storefront-hero.json +120 -0
  480. package/patterns/stretch-goal-ladder.json +128 -0
  481. package/patterns/subscriber-list.json +135 -0
  482. package/patterns/supply-chain-map.json +109 -0
  483. package/patterns/swipe-action-bar.json +119 -0
  484. package/patterns/swipe-card.json +126 -0
  485. package/patterns/table-map.json +134 -0
  486. package/patterns/target-progress-ring.json +103 -0
  487. package/patterns/team-member-row.json +139 -0
  488. package/patterns/tech-pills.json +69 -0
  489. package/patterns/tenant-card.json +150 -0
  490. package/patterns/tenant-directory.json +118 -0
  491. package/patterns/tenant-payment-setup.json +98 -0
  492. package/patterns/terminal-emulator.json +117 -0
  493. package/patterns/testimonials.json +133 -0
  494. package/patterns/tier-builder.json +131 -0
  495. package/patterns/tier-card.json +118 -0
  496. package/patterns/tier-upgrade-card.json +144 -0
  497. package/patterns/timeline-scrubber.json +107 -0
  498. package/patterns/timeline.json +140 -0
  499. package/patterns/toast-notification.json +123 -0
  500. package/patterns/tool-list.json +89 -0
  501. package/patterns/trace-waterfall.json +123 -0
  502. package/patterns/trade-modal.json +132 -0
  503. package/patterns/transcript-stream.json +125 -0
  504. package/patterns/tree-view.json +124 -0
  505. package/patterns/unit-detail.json +100 -0
  506. package/patterns/unit-list.json +106 -0
  507. package/patterns/unlock-gate.json +132 -0
  508. package/patterns/usage-meter.json +113 -0
  509. package/patterns/vacancy-tracker.json +106 -0
  510. package/patterns/valuation-chart.json +126 -0
  511. package/patterns/version-history.json +140 -0
  512. package/patterns/video-room.json +142 -0
  513. package/patterns/vod-annotator.json +112 -0
  514. package/patterns/voice-command-palette.json +127 -0
  515. package/patterns/voice-waveform.json +120 -0
  516. package/patterns/voting-breakdown.json +101 -0
  517. package/patterns/waveform-track.json +102 -0
  518. package/patterns/webhook-debugger.json +116 -0
  519. package/patterns/workflow-canvas.json +147 -0
  520. package/patterns/workspace-region-stack.json +74 -0
  521. package/schemas/archetype.v2.json +145 -0
  522. package/schemas/blueprint.v1.json +225 -0
  523. package/schemas/common.v1.json +337 -0
  524. package/schemas/content-health-report.v1.json +255 -0
  525. package/schemas/content-intelligence.v1.json +142 -0
  526. package/schemas/essence.v4.json +430 -0
  527. package/schemas/execution-pack.common.v1.json +207 -0
  528. package/schemas/page-pack.v1.json +106 -0
  529. package/schemas/pattern.v2.json +232 -0
  530. package/schemas/public-content-list.v1.json +28 -0
  531. package/schemas/public-content-record.v1.json +91 -0
  532. package/schemas/public-content-summary.v1.json +132 -0
  533. package/schemas/registry-intelligence-summary.v1.json +81 -0
  534. package/schemas/search-response.v1.json +28 -0
  535. package/schemas/section-pack.v1.json +128 -0
  536. package/schemas/shell.v1.json +69 -0
  537. package/schemas/showcase-manifest-entry.v1.json +92 -0
  538. package/schemas/showcase-manifest.v1.json +28 -0
  539. package/schemas/showcase-shortlist.v1.json +36 -0
  540. package/schemas/theme.v1.json +190 -0
  541. package/shells/canvas-overlay.json +94 -0
  542. package/shells/centered.json +49 -0
  543. package/shells/chat-portal.json +153 -0
  544. package/shells/copilot-overlay.json +156 -0
  545. package/shells/full-bleed.json +100 -0
  546. package/shells/immersive-stage.json +89 -0
  547. package/shells/minimal-header.json +103 -0
  548. package/shells/mobile-tab-bar.json +119 -0
  549. package/shells/recipefork-top-nav.json +74 -0
  550. package/shells/sidebar-aside.json +163 -0
  551. package/shells/sidebar-main-footer.json +158 -0
  552. package/shells/sidebar-main.json +175 -0
  553. package/shells/sidebar-right.json +128 -0
  554. package/shells/terminal-split.json +95 -0
  555. package/shells/three-column-browser.json +215 -0
  556. package/shells/top-nav-footer.json +114 -0
  557. package/shells/top-nav-main.json +103 -0
  558. package/shells/top-nav-sidebar.json +130 -0
  559. package/shells/workspace-aside.json +181 -0
  560. package/themes/auradecantism.json +601 -0
  561. package/themes/bespoke.json +433 -0
  562. package/themes/bioluminescent.json +217 -0
  563. package/themes/bistro.json +422 -0
  564. package/themes/carbon-neon.json +458 -0
  565. package/themes/carbon.json +429 -0
  566. package/themes/cinema.json +479 -0
  567. package/themes/clean.json +261 -0
  568. package/themes/counsel.json +431 -0
  569. package/themes/dopamine.json +237 -0
  570. package/themes/earth.json +453 -0
  571. package/themes/editorial.json +237 -0
  572. package/themes/estate.json +559 -0
  573. package/themes/fintech.json +472 -0
  574. package/themes/gaming-guild.json +341 -0
  575. package/themes/glassmorphism.json +309 -0
  576. package/themes/government.json +481 -0
  577. package/themes/healthcare.json +480 -0
  578. package/themes/lab.json +437 -0
  579. package/themes/launchpad.json +320 -0
  580. package/themes/liquid-glass.json +223 -0
  581. package/themes/luminarum.json +598 -0
  582. package/themes/neo-tokyo.json +451 -0
  583. package/themes/neon-cyber.json +280 -0
  584. package/themes/neon-dark.json +220 -0
  585. package/themes/paper.json +496 -0
  586. package/themes/prismatic.json +217 -0
  587. package/themes/recipefork.json +278 -0
  588. package/themes/retro-arcade.json +620 -0
  589. package/themes/retro.json +240 -0
  590. package/themes/studio-dark.json +437 -0
  591. package/themes/studio.json +488 -0
  592. package/themes/swipecircle.json +533 -0
  593. package/themes/terminal.json +549 -0
@@ -0,0 +1,107 @@
1
+ {
2
+ "id": "timeline-scrubber",
3
+ "$schema": "https://decantr.ai/schemas/pattern.v2.json",
4
+ "version": "1.0.0",
5
+ "decantr_compat": ">=2.0.0",
6
+ "name": "Timeline Scrubber",
7
+ "description": "Horizontal multi-track timeline with draggable scrubber handle, scene markers, keyframe dots, and zoom controls for video/audio editing workflows.",
8
+ "category": "media",
9
+ "tags": ["2026", "media", "timeline", "video", "audio", "scrubber", "editor"],
10
+ "components": ["TimelineCanvas", "TrackRow", "Scrubber", "KeyframeDot", "SceneMarker", "ZoomControls"],
11
+ "default_preset": "video",
12
+ "presets": {
13
+ "video": {
14
+ "description": "Multi-track video timeline with frame thumbnails, stacked audio tracks, scene markers, and full keyframe support for editing workflows",
15
+ "layout": {
16
+ "layout": "stack",
17
+ "atoms": "_relative _w100 _flex _flex-col _bg-surface _border-t"
18
+ }
19
+ },
20
+ "audio": {
21
+ "description": "Audio-focused timeline rendering waveform envelopes across multiple stems with beat grid alignment and region editing",
22
+ "layout": {
23
+ "layout": "stack",
24
+ "atoms": "_relative _w100 _flex _flex-col _bg-surface"
25
+ }
26
+ },
27
+ "simple": {
28
+ "description": "Single track timeline with scrubber and basic zoom, suitable for preview players and lightweight review tools",
29
+ "layout": {
30
+ "layout": "stack",
31
+ "atoms": "_relative _w100 _flex _flex-col _bg-surface-muted"
32
+ }
33
+ }
34
+ },
35
+ "visual_brief": "A horizontal multi-track timeline stacked vertically with a fixed-position time ruler at top showing hours:minutes:seconds:frames tick marks. Video tracks render sequential frame thumbnails (approximately 80x45px each) at regular intervals matching zoom level. Audio tracks show symmetrical amplitude waveform envelopes in accent color against a muted background. A prominent vertical scrubber line (2px wide, primary color) spans all tracks with a triangular playhead handle at top that the user drags left-right to seek. Scene markers appear as colored flags above the ruler at scene-change timestamps, each with a 12px colored pennant shape. Keyframes render as 8px rotated-square diamond shapes on their associated track rows, connected by thin lines showing interpolation. Zoom controls sit in a small pill at bottom-right with +/-/fit buttons. Current time displays in monospace font at top-left (e.g. 00:02:14:07). Beat/frame grid lines run vertically through all tracks at zoom-appropriate density.",
36
+ "default_layout": {
37
+ "layout": "stack",
38
+ "atoms": "_relative _w100 _flex _flex-col _bg-surface _border-t",
39
+ "slots": {
40
+ "time-ruler": "Horizontal ruler at the top showing time markers with major ticks (seconds) and minor ticks (frames). Label format depends on zoom level: frames, seconds, or minutes. Monospace font for time labels. Scrolls horizontally in sync with track content.",
41
+ "track-stack": "Vertical stack of track rows. Each row is 64px tall for video tracks (to accommodate thumbnails) or 48px tall for audio tracks. Rows have a track header on the left (120px fixed) showing track name, mute/solo, and lock toggles, with the waveform/thumbnail area filling remaining width.",
42
+ "scrubber": "Vertical playhead line spanning all tracks, draggable via triangular handle at top. Must use pointer-events to capture drag; updates time via onChange. Shows current-time tooltip near the handle while dragging.",
43
+ "scene-markers": "Colored flag markers positioned absolutely above the ruler at scene-change timestamps. Hover shows scene name tooltip. Clicking jumps the scrubber to the marker position.",
44
+ "keyframes": "Diamond-shaped dots on individual track rows at automation keyframe timestamps. Selectable, draggable, connected by interpolation lines that reflect curve type (linear, bezier, hold).",
45
+ "zoom-controls": "Small pill-shaped toolbar anchored bottom-right with zoom-in, zoom-out, and fit-to-content buttons. Icon-only with tooltips."
46
+ }
47
+ },
48
+ "responsive": {
49
+ "mobile": "Track headers collapse to 48px wide icon-only. Zoom controls hidden, replaced by pinch gesture. Thumbnails downscaled to 40x22px. Scene markers render as colored dots without labels.",
50
+ "tablet": "Standard layout with slightly reduced track heights (52px video, 40px audio). Touch-drag for scrubber and two-finger pinch for zoom.",
51
+ "desktop": "Full layout with all controls visible and keyboard shortcuts enabled for playback and zoom navigation."
52
+ },
53
+ "layout_hints": {
54
+ "playhead_priority": "The scrubber and time ruler should be the dominant orientation anchors. Tracks, keyframes, and markers all support that shared temporal frame.",
55
+ "track_hierarchy": "Video, audio, and annotation tracks should remain clearly separated so the user always understands what layer they are editing or reviewing.",
56
+ "zoom_discipline": "As zoom changes, maintain the relationship between ruler, markers, and media blocks instead of letting one layer drift out of sync with the others."
57
+ },
58
+ "layout_hints": {
59
+ "playhead_priority": "The scrubber and time ruler should be the dominant orientation anchors. Tracks, keyframes, and markers all support that shared temporal frame.",
60
+ "track_hierarchy": "Video, audio, and annotation tracks should remain clearly separated so the user always understands what layer they are editing or reviewing.",
61
+ "zoom_discipline": "As zoom changes, maintain the relationship between ruler, markers, and media blocks instead of letting one layer drift out of sync with the others."
62
+ },
63
+ "motion": {
64
+ "micro": {
65
+ "scrubber-drag": "scrubber x-position follows pointer at 60fps with no easing",
66
+ "keyframe-hover": "scale(1.4) 120ms ease-out with glow ring"
67
+ },
68
+ "transitions": {
69
+ "zoom-change": "track-width transition 250ms ease-in-out with thumbnail re-rendering",
70
+ "marker-add": "scale(0) to scale(1) with bounce 200ms spring"
71
+ },
72
+ "ambient": {
73
+ "playhead-playing": "scrubber advances continuously at playback rate with subtle glow pulse"
74
+ }
75
+ },
76
+ "interactions": [
77
+ "animate-on-mount",
78
+ "stagger-children",
79
+ "real-time-updates",
80
+ "scroll-reveal"
81
+ ],
82
+ "composition": {
83
+ "TimelineScrubber": "Root(d-section, stack) > [TimeRuler + TrackStack + ZoomControls]",
84
+ "TrackStack": "Container > TrackRow*(d-surface) > [TrackHeader + TrackContent > (FrameThumbnails | Waveform) + KeyframeDot* + SceneMarker*]",
85
+ "Scrubber": "Overlay(absolute, full-height) > [ScrubberHandle(triangle) + ScrubberLine(vertical) + TimeTooltip?]",
86
+ "ZoomControls": "Pill(d-control, bottom-right) > [ZoomIn + ZoomOut + FitButton]"
87
+ },
88
+ "accessibility": {
89
+ "role": "application",
90
+ "aria-label": "Media timeline editor",
91
+ "announcements": [
92
+ "Playhead at {timestamp}",
93
+ "Scene marker {name} added at {timestamp}",
94
+ "Zoomed to {level}"
95
+ ],
96
+ "keyboard": [
97
+ "Space: play/pause",
98
+ "Left/Right: step one frame",
99
+ "Shift+Left/Right: jump 10 frames",
100
+ "Home: jump to start",
101
+ "End: jump to end",
102
+ "+/-: zoom in/out",
103
+ "M: add scene marker at playhead",
104
+ "K: add keyframe at playhead"
105
+ ]
106
+ }
107
+ }
@@ -0,0 +1,140 @@
1
+ {
2
+ "$schema": "https://decantr.ai/schemas/pattern.v2.json",
3
+ "id": "timeline",
4
+ "version": "1.0.0",
5
+ "decantr_compat": ">=2.0.0",
6
+ "name": "Timeline",
7
+ "description": "Chronological sequence of events with dates, descriptions, and optional media.",
8
+ "tags": [
9
+ "history",
10
+ "events",
11
+ "chronology",
12
+ "activity",
13
+ "milestones"
14
+ ],
15
+ "classification": {
16
+ "triggers": [
17
+ "timeline",
18
+ "history",
19
+ "milestones",
20
+ "event log",
21
+ "journey"
22
+ ],
23
+ "tier": "recommended"
24
+ },
25
+ "components": ["Card", "Badge", "icon", "Text"],
26
+ "default_preset": "default",
27
+ "presets": {
28
+ "default": {
29
+ "description": "Vertical timeline with alternating sides",
30
+ "layout": {
31
+ "layout": "stack",
32
+ "atoms": "_flex _col _gap6 _rel",
33
+ "slots": {
34
+ "events": "Vertical sequence of timeline entries alternating around a central connector line"
35
+ },
36
+ "orientation": "vertical",
37
+ "alternating": true
38
+ }
39
+ },
40
+ "compact": {
41
+ "description": "Single-side vertical timeline with all entries on one side of the connector line for compact layouts",
42
+ "layout": {
43
+ "layout": "stack",
44
+ "atoms": "_flex _col _gap4 _rel",
45
+ "slots": {
46
+ "events": "Compact single-sided vertical timeline entries aligned to one connector line"
47
+ },
48
+ "orientation": "vertical",
49
+ "alternating": false
50
+ }
51
+ },
52
+ "horizontal": {
53
+ "description": "Horizontal scrolling timeline with entries arranged left-to-right along a connector line",
54
+ "layout": {
55
+ "layout": "row",
56
+ "atoms": "_flex _gap6 _overauto",
57
+ "slots": {
58
+ "events": "Horizontally scrolling timeline entries arranged along a shared connector line"
59
+ },
60
+ "orientation": "horizontal"
61
+ }
62
+ }
63
+ },
64
+ "slots": {
65
+ "events": {
66
+ "type": "array",
67
+ "item": {
68
+ "date": {
69
+ "type": "datetime",
70
+ "required": true
71
+ },
72
+ "title": {
73
+ "type": "text",
74
+ "required": true
75
+ },
76
+ "description": {
77
+ "type": "text",
78
+ "required": false
79
+ },
80
+ "icon": {
81
+ "type": "icon",
82
+ "required": false
83
+ },
84
+ "media": {
85
+ "type": "image",
86
+ "required": false
87
+ }
88
+ }
89
+ }
90
+ },
91
+ "layout": {
92
+ "container": "section",
93
+ "header": [
94
+ "title?"
95
+ ],
96
+ "body": [
97
+ "events"
98
+ ],
99
+ "connector": "line"
100
+ },
101
+ "visual_brief": "Vertical sequence of timeline entries connected by a thin vertical line. Each entry has a small circle dot on the line, a date or timestamp label, an event title in medium weight, and a description paragraph. Optional media (images, icons) can appear beside entries. The compact preset reduces spacing and hides descriptions, showing only date and title. The horizontal preset arranges entries left-to-right along a horizontal line with dates below and content above. Milestone entries may have a larger dot or distinct icon.",
102
+ "layout_hints": {
103
+ "connector_rhythm": "The connector line should unify the sequence visually without overpowering the content. Dots and timestamps need stable alignment across entries.",
104
+ "milestone_emphasis": "Milestone entries may be more prominent, but they should still belong to the same temporal rhythm as the surrounding items.",
105
+ "content_balance": "Descriptions and optional media should support the chronology rather than turning the timeline into a card gallery."
106
+ },
107
+ "default_layout": {
108
+ "layout": "stack",
109
+ "atoms": "_flex _col _gap6 _rel",
110
+ "slots": {
111
+ "events": "Vertical sequence of timeline entries alternating around a central connector line"
112
+ }
113
+ },
114
+ "responsive": {
115
+ "mobile": "Vertical timeline only. Line on the left edge with content to the right. Dates above entries. Compact spacing.",
116
+ "tablet": "Standard vertical timeline with comfortable spacing. Content beside the timeline dots.",
117
+ "desktop": "Full vertical or horizontal timeline. Entries alternate left and right of the center line (vertical) or spread evenly (horizontal)."
118
+ },
119
+ "motion": {
120
+ "micro": "Connector highlights and milestone accents may animate softly on hover and focus.",
121
+ "transitions": "New entries or progressive reveals should fade or slide in gently without making the chronology feel unstable."
122
+ },
123
+ "interactions": [
124
+ "animate-on-mount",
125
+ "stagger-children",
126
+ "real-time-updates",
127
+ "scroll-reveal"
128
+ ],
129
+ "accessibility": {
130
+ "role": "list",
131
+ "aria-label": "Timeline",
132
+ "keyboard": [
133
+ "Tab moves through interactive timeline items and associated actions in chronological order."
134
+ ],
135
+ "announcements": [
136
+ "Dates, titles, and milestone states should be available semantically rather than through layout alone."
137
+ ],
138
+ "focus_management": "Keep focus transitions chronological and avoid jumping users between distant timeline entries unexpectedly."
139
+ }
140
+ }
@@ -0,0 +1,123 @@
1
+ {
2
+ "$schema": "https://decantr.ai/schemas/pattern.v2.json",
3
+ "id": "toast-notification",
4
+ "version": "1.0.0",
5
+ "decantr_compat": ">=2.0.0",
6
+ "name": "Toast Notification",
7
+ "description": "Transient notification toast with auto-dismiss timer, severity-colored stripe, stacking behavior, and optional action buttons. Slides in from top-right and auto-removes after a configurable duration with a shrinking progress bar.",
8
+ "category": "system",
9
+ "tags": [
10
+ "2026",
11
+ "system",
12
+ "notification",
13
+ "toast",
14
+ "alert",
15
+ "feedback",
16
+ "transient"
17
+ ],
18
+ "components": [
19
+ "ToastContainer",
20
+ "Toast",
21
+ "ToastIcon",
22
+ "ToastTitle",
23
+ "ToastDescription",
24
+ "ToastAction",
25
+ "DismissButton",
26
+ "ProgressBar"
27
+ ],
28
+ "default_preset": "info",
29
+ "presets": {
30
+ "info": {
31
+ "description": "Informational toast with blue left stripe, info circle icon, and neutral styling for general messages",
32
+ "layout": {
33
+ "layout": "stack",
34
+ "atoms": "_fixed _top4 _right4 _z[200] _flex _col _gap2"
35
+ }
36
+ },
37
+ "success": {
38
+ "description": "Success toast with green left stripe, checkmark icon, confirming a completed action",
39
+ "layout": {
40
+ "layout": "stack",
41
+ "atoms": "_fixed _top4 _right4 _z[200] _flex _col _gap2"
42
+ }
43
+ },
44
+ "warning": {
45
+ "description": "Warning toast with amber left stripe, triangle-exclamation icon, for non-blocking cautions",
46
+ "layout": {
47
+ "layout": "stack",
48
+ "atoms": "_fixed _top4 _right4 _z[200] _flex _col _gap2"
49
+ }
50
+ },
51
+ "error": {
52
+ "description": "Error toast with red left stripe, x-circle icon, for failures requiring attention — does not auto-dismiss",
53
+ "layout": {
54
+ "layout": "stack",
55
+ "atoms": "_fixed _top4 _right4 _z[200] _flex _col _gap2"
56
+ }
57
+ },
58
+ "action": {
59
+ "description": "Toast with an inline action button on the right side for undo, retry, or custom CTA alongside the message",
60
+ "layout": {
61
+ "layout": "stack",
62
+ "atoms": "_fixed _top4 _right4 _z[200] _flex _col _gap2"
63
+ }
64
+ }
65
+ },
66
+ "visual_brief": "Fixed-position toast container anchored to the top-right corner of the viewport. Each toast is a compact card (max-width 380px) with border-radius 8px, a 4px left color stripe indicating severity (blue for info, green for success, amber for warning, red for error). Interior layout is a row: a 20px severity icon on the left, then a vertical stack of bold title (14px, font-weight 600) and description text (13px, muted color) in the center, and a small ghost dismiss button (X icon, 16px) on the far right. In the action preset, a small outlined button sits between the text and dismiss button. At the very bottom of each toast card, a thin 2px progress bar spans the full width, starting at 100% and shrinking to 0% over the auto-dismiss duration (default 5 seconds), colored to match the severity stripe. The bar uses a linear animation for predictable timing. Multiple toasts stack vertically with 8px gap, newest on top. When more than 3 toasts are visible, older toasts compress to show only a 4px peek of their top edge behind the stack, giving a layered card-deck appearance. Toast cards have a subtle box-shadow (0 4px 12px rgba(0,0,0,0.15)) and a 1px border in a muted tone. Background uses the standard surface color with high opacity (no frosted glass).",
67
+ "default_layout": {
68
+ "layout": "stack",
69
+ "atoms": "_fixed _top4 _right4 _z[200] _flex _col _gap2",
70
+ "slots": {
71
+ "toast-container": "Fixed-position wrapper anchored top-right of the viewport. Manages stacking order of multiple toasts with newest on top. Sets max-width 380px for all child toasts. Handles vertical gap and overflow behavior when more than 3 toasts are visible by compressing older toasts into a peek stack.",
72
+ "toast-card": "Repeating slot — one per notification. A compact card with 4px colored left border-stripe indicating severity (blue=info, green=success, amber=warning, red=error). Interior is a row layout: ToastIcon (20px severity icon matching stripe color) on the left, a vertical stack of ToastTitle (bold, 14px) and ToastDescription (muted, 13px) in the center, and DismissButton (ghost X, 16px) on the right. Card has border-radius 8px, subtle shadow, surface background, 12px padding. Error toasts have a faint red background tint.",
73
+ "toast-action": "Optional slot for the action preset. A small outlined button (text + optional icon) positioned between the description text and the dismiss button. Button uses accent color and ghost variant. Common actions: Undo, Retry, View, Open.",
74
+ "progress-bar": "A 2px-tall bar at the absolute bottom of the toast card spanning its full width. Starts at 100% width and linearly shrinks to 0% over the auto-dismiss duration. Color matches the severity stripe. When it reaches 0%, the toast dismisses. Error toasts have no progress bar (they persist until manually dismissed)."
75
+ }
76
+ },
77
+ "accessibility": {
78
+ "role": "alert",
79
+ "aria-label": "Notification toast",
80
+ "announcements": [
81
+ "New notification: {severity} — {title}: {description}",
82
+ "Notification dismissed",
83
+ "Action available: {action_label}",
84
+ "Error notification requires manual dismissal"
85
+ ],
86
+ "keyboard": [
87
+ "Tab: focus the toast, then cycle through action button and dismiss button",
88
+ "Enter: activate focused button (action or dismiss)",
89
+ "Escape: dismiss the currently focused toast",
90
+ "F6: move focus to the toast container when notifications are present"
91
+ ]
92
+ },
93
+ "responsive": {
94
+ "mobile": "Toasts appear at the top of the screen spanning full width with 8px horizontal margin. Max-width removed. Stack compresses to show only the newest toast with a count badge ('2 more') below. Swipe right to dismiss. Progress bar height increases to 3px for visibility.",
95
+ "tablet": "Toasts anchored top-right at 380px max-width. Standard stacking with up to 3 visible. Dismiss on tap of X button.",
96
+ "desktop": "Full layout with top-right positioning, hover reveals dismiss button (hidden by default on non-error toasts), mouse hover pauses the auto-dismiss timer and progress bar animation."
97
+ },
98
+ "motion": {
99
+ "micro": {
100
+ "dismiss-hover": "opacity 0.6→1 + scale(1.1) 120ms ease-out on dismiss button hover",
101
+ "action-press": "scale(0.96) 80ms ease-in on action button press"
102
+ },
103
+ "transitions": {
104
+ "toast-enter": "translateX(120%)→translateX(0) + opacity 0→1 350ms cubic-bezier(0.21, 1.02, 0.73, 1)",
105
+ "toast-exit": "translateX(0)→translateX(120%) + opacity 1→0 250ms ease-in",
106
+ "stack-reorder": "translateY shift 200ms ease-out when toasts above are dismissed",
107
+ "progress-shrink": "width 100%→0% linear over auto-dismiss duration"
108
+ },
109
+ "ambient": {
110
+ "error-pulse": "box-shadow pulse with red glow 2s ease-in-out infinite on error toasts"
111
+ }
112
+ },
113
+ "interactions": [
114
+ "animate-on-mount",
115
+ "stagger-children"
116
+ ],
117
+ "composition": {
118
+ "ToastContainer": "Container(fixed, top-right, z-200, flex-col, gap-2) > Toast*",
119
+ "Toast": "Card(d-surface, border-left: severity-color, shadow, max-w-380) > [ToastIcon(severity-color) + ContentStack + ToastAction?(d-interactive) + DismissButton(ghost) + ProgressBar(absolute-bottom)]",
120
+ "ContentStack": "Stack(flex-col, gap-1) > [ToastTitle(font-bold, text-sm) + ToastDescription(text-xs, muted)]",
121
+ "ProgressBar": "Bar(absolute, bottom-0, h-2px, bg: severity-color, width: 100%→0%, linear)"
122
+ }
123
+ }
@@ -0,0 +1,89 @@
1
+ {
2
+ "$schema": "https://decantr.ai/schemas/pattern.v2.json",
3
+ "id": "tool-list",
4
+ "version": "1.0.0",
5
+ "decantr_compat": ">=2.0.0",
6
+ "name": "Tool List",
7
+ "description": "Dense two-column list of tools or features with monospace names and muted descriptions. CLI-style layout with colored dot bullets and a colored left border accent per item. Each item gets a unique color from a rotating palette. Hover highlights the row background. Pure text layout with no component dependencies.",
8
+ "dependencies": {
9
+ "patterns": {},
10
+ "styles": {},
11
+ "requires_core": {
12
+ "components": [],
13
+ "charts": []
14
+ }
15
+ },
16
+ "components": ["Text", "Container"],
17
+ "contained": false,
18
+ "default_preset": "standard",
19
+ "presets": {
20
+ "standard": {
21
+ "description": "Two-column grid of tool items with no gap between rows. Each item has: a 4px colored left border accent, a colored dot bullet (6px circle), a monospace tool name in the item's accent color, and a muted description below. Items have subtle bottom borders and a semi-transparent background that brightens on hover. Colors rotate through coral, amber, cyan, green, yellow, orange, purple, pink, crimson. Layout: 2-column grid on desktop, single column on mobile.",
22
+ "components": [],
23
+ "layout": {
24
+ "layout": "grid",
25
+ "atoms": "_grid _gc2 _gap0 _mw[880px] _mx[auto]",
26
+ "slots": {
27
+ "tool-name": "Tool name displayed in monospace font with _mono _fs[0.82rem] _fw600 _mb1. Includes a colored dot bullet (6px circle, inline-block, flex-shrink-0) before the name. Both the dot and name text use the item's accent color from the rotation palette. Wrapped in a _flex _items[center] _gap2 container.",
28
+ "tool-description": "Tool description with _fs[0.82rem] _fgmuted _lh[1.4]. Brief one-line description of the tool's purpose."
29
+ }
30
+ }
31
+ },
32
+ "compact": {
33
+ "description": "Single-column layout with denser spacing. Same colored dot bullets and monospace names, but items are stacked in a single column for narrower containers or longer lists. Reduced padding for a more compact feel.",
34
+ "components": [],
35
+ "layout": {
36
+ "layout": "grid",
37
+ "atoms": "_grid _gc1 _gap0 _mw[640px] _mx[auto]",
38
+ "slots": {
39
+ "tool-name": "Monospace tool name with colored dot bullet, _mono _fs[0.8rem] _fw600. Color from rotating palette.",
40
+ "tool-description": "Muted description text with _fs[0.8rem] _fgmuted _lh[1.4]."
41
+ }
42
+ }
43
+ }
44
+ },
45
+ "default_layout": {
46
+ "layout": "grid",
47
+ "atoms": "_grid _gc2 _gap0 _mw[880px] _mx[auto]",
48
+ "slots": {
49
+ "tool-name": "Monospace name with colored dot bullet",
50
+ "tool-description": "Muted description text"
51
+ }
52
+ },
53
+ "io": {
54
+ "consumes": [],
55
+ "produces": [],
56
+ "actions": []
57
+ },
58
+ "visual_brief": "Dense two-column list of tools or features. Each item shows a colored dot bullet on the left (cycling through a rotating palette), the tool name in monospace medium-weight text, and a muted description beside or below it. A thin colored left border accent matches the dot color per item. Rows highlight on hover with a subtle background tint. The compact preset reduces line height and removes descriptions, showing names only. Pure text layout with no images or icons, relying on typography and color accents for visual hierarchy.",
59
+ "responsive": {
60
+ "mobile": "Single-column list. Names and descriptions stack vertically per item. Full-width rows.",
61
+ "tablet": "Two-column list if items fit. Comfortable row spacing.",
62
+ "desktop": "Two-column grid with items distributed evenly. Hover effects visible. Full descriptions inline."
63
+ },
64
+ "layout_hints": {
65
+ "scan_priority": "Tool name comes first, then a short supporting description. The color dot and border are just enough to help scan, not enough to become the main content.",
66
+ "density": "This pattern is meant to be compact and text-forward. Keep rows tight and consistent so the list feels like a curated inventory rather than a card gallery.",
67
+ "column_balance": "In two-column layouts, maintain even visual weight between columns instead of letting one side become noticeably denser or longer."
68
+ },
69
+ "motion": {
70
+ "micro": "Rows may brighten slightly on hover and focused tool names may sharpen subtly for keyboard users.",
71
+ "transitions": "Filtering or list updates should preserve the sense of a stable catalog rather than reflowing with flashy animation."
72
+ },
73
+ "interactions": [
74
+ "click-select",
75
+ "hover-reveal",
76
+ "animate-on-mount",
77
+ "stagger-children"
78
+ ],
79
+ "accessibility": {
80
+ "role": "list",
81
+ "aria-label": "Tool list",
82
+ "keyboard": [
83
+ "If items are interactive, focus should move tool by tool in reading order without exposing decorative accents as separate stops."
84
+ ],
85
+ "announcements": [
86
+ "Tool name and description should be exposed semantically so the list remains meaningful without relying on colored bullets or borders."
87
+ ]
88
+ }
89
+ }
@@ -0,0 +1,123 @@
1
+ {
2
+ "$schema": "https://decantr.ai/schemas/pattern.v2.json",
3
+ "id": "trace-waterfall",
4
+ "version": "1.0.0",
5
+ "decantr_compat": ">=2.0.0",
6
+ "name": "Trace Waterfall",
7
+ "description": "Horizontal waterfall chart showing execution trace spans with nested parent-child relationships, color-coded by span type, time axis alignment, and expandable span detail panels for debugging distributed systems.",
8
+ "category": "observability",
9
+ "tags": [
10
+ "2026",
11
+ "observability",
12
+ "tracing",
13
+ "waterfall",
14
+ "spans",
15
+ "distributed-systems",
16
+ "performance"
17
+ ],
18
+ "components": [
19
+ "TraceContainer",
20
+ "SpanBar",
21
+ "SpanLabel",
22
+ "TimeAxis",
23
+ "SpanDetail",
24
+ "FilterBar"
25
+ ],
26
+ "default_preset": "standard",
27
+ "presets": {
28
+ "standard": {
29
+ "description": "Full trace waterfall with all spans expanded showing nested parent-child indentation, time axis with millisecond markers, and click-to-expand detail panels",
30
+ "layout": {
31
+ "layout": "stack",
32
+ "atoms": "_flex _col _gap0 _wfull _overflow-x-auto"
33
+ }
34
+ },
35
+ "compact": {
36
+ "description": "Collapsed spans grouped by service — only top-level spans visible by default with expand toggles to reveal children, reducing vertical space for large traces",
37
+ "layout": {
38
+ "layout": "stack",
39
+ "atoms": "_flex _col _gap0 _wfull _compact"
40
+ }
41
+ },
42
+ "flame": {
43
+ "description": "Flame chart style rendering where spans stack vertically by depth level rather than listing sequentially — wider bars represent longer durations, nested calls stack downward creating a flame shape",
44
+ "layout": {
45
+ "layout": "stack",
46
+ "atoms": "_flex _col _gap0 _wfull _overflow-x-auto _overflow-y-auto"
47
+ }
48
+ }
49
+ },
50
+ "visual_brief": "Vertical list of horizontal bars where each bar represents a trace span. A horizontal time axis runs across the top with millisecond markers and thin vertical gridlines descending the full height. Each span row contains a left-aligned label area (service name, operation name, duration text) and a horizontal bar positioned and sized proportionally to its start time and duration relative to the total trace. Nested child spans indent further right in the label column and align beneath their parent bars. Bar colors indicate span type: blue for HTTP calls, green for database queries, purple for AI/LLM calls, orange for cache operations, red for errored spans. Hovering a span highlights it with increased opacity and dims all non-ancestor/non-descendant spans. Clicking a span expands a detail panel below it showing metadata key-value pairs, tags, log entries, and timing breakdown. Error spans display a red left border and a small warning triangle icon in the label area. The filter bar at the top provides service name dropdown, minimum duration slider, and error-only toggle.",
51
+ "default_layout": {
52
+ "layout": "stack",
53
+ "atoms": "_flex _col _gap0 _wfull _overflow-x-auto",
54
+ "slots": {
55
+ "filter-bar": "Horizontal toolbar at the top containing a service name dropdown filter, a minimum duration threshold slider, an error-only toggle switch, and a search input for filtering spans by operation name. Filters apply instantly and fade out non-matching spans rather than removing them.",
56
+ "time-axis": "Fixed horizontal ruler at the top of the waterfall showing time markers in milliseconds. Thin vertical gridlines extend downward through all span rows. The axis auto-scales to fit the trace duration. Markers appear at regular intervals (e.g., every 50ms or 100ms depending on total duration). The total trace duration displays at the right edge.",
57
+ "span-row": "Repeating slot — one per span. Each row is a horizontal strip divided into a fixed-width label area on the left and a proportional bar area on the right. The label area shows: indent guides (thin vertical lines) for nesting depth, an expand/collapse chevron if the span has children, the service name as a colored badge, the operation name, and the duration in milliseconds. The bar area contains a colored horizontal rectangle positioned according to start time and sized according to duration. Error spans have a red-tinted background on the entire row.",
58
+ "span-detail": "Expandable panel that appears below a span row when clicked. Contains a metadata section with key-value pairs (trace ID, span ID, parent ID, service, operation), a tags section showing span attributes as pills, a logs section with timestamped log entries, and a timing breakdown showing queue time, execution time, and child time as a stacked mini-bar."
59
+ }
60
+ },
61
+ "responsive": {
62
+ "mobile": "Label area collapses to show only service icon and duration. Span bars use full width. Tap a span to open detail in a bottom sheet. Filter bar collapses to a single filter icon button that opens a dropdown. Time axis shows fewer markers.",
63
+ "tablet": "Standard layout with slightly narrower label area. Span detail opens inline. Filter bar fully visible. Comfortable touch targets on span rows.",
64
+ "desktop": "Full waterfall with generous label area showing service name, operation, and duration. Hover effects active. Span detail expands inline with full metadata. Filter bar shows all controls in a single row."
65
+ },
66
+ "layout_hints": {
67
+ "axis_priority": "The time axis and span alignment must remain visually trustworthy. Labels, bars, and detail panels should all reinforce the temporal read rather than acting like separate widgets.",
68
+ "detail_discipline": "Expanded span details should feel attached to their parent row and should not break the user's sense of trace hierarchy.",
69
+ "filter_rhythm": "Keep the filter bar compact and clearly upstream of the waterfall so it reads as a control strip, not as another data panel."
70
+ },
71
+ "motion": {
72
+ "micro": {
73
+ "span-hover": "opacity 0.7→1 + background-tint 150ms ease-out on hovered span, opacity 1→0.3 on non-related spans",
74
+ "bar-highlight": "box-shadow glow matching span color 200ms ease-out"
75
+ },
76
+ "transitions": {
77
+ "detail-expand": "max-height 0→auto + fade 250ms ease-out",
78
+ "detail-collapse": "max-height auto→0 + fade 150ms ease-in",
79
+ "filter-apply": "opacity transition 300ms ease-out on non-matching spans"
80
+ },
81
+ "ambient": {
82
+ "error-pulse": "border-left color pulse red 2s ease-in-out infinite on error spans"
83
+ }
84
+ },
85
+ "interactions": [
86
+ "hover-tooltip",
87
+ "hover-reveal",
88
+ "click-select",
89
+ "status-pulse",
90
+ "animate-on-mount",
91
+ "real-time-updates",
92
+ "keyboard-navigation"
93
+ ],
94
+ "composition": {
95
+ "TraceWaterfall": "TraceContainer(d-section, flex-col) > [FilterBar(d-control) + TimeAxis(d-annotation) + SpanList]",
96
+ "FilterBar": "Row(d-control) > [ServiceFilter + DurationSlider + ErrorToggle + SearchInput]",
97
+ "TimeAxis": "Ruler(d-annotation, sticky-top) > [TimeMarker* + Gridlines]",
98
+ "SpanList": "Stack(d-data) > SpanRow*",
99
+ "SpanRow": "Row(d-interactive, indent: depth) > [SpanLabel > [Chevron? + ServiceBadge + OperationName + Duration] + SpanBar(color: type, position: startTime, width: duration)] + SpanDetail?(d-surface)",
100
+ "SpanDetail": "Panel(d-surface, expandable) > [Metadata(d-data) + Tags + Logs + TimingBreakdown]"
101
+ },
102
+ "accessibility": {
103
+ "role": "tree",
104
+ "aria-label": "Execution trace waterfall showing span hierarchy",
105
+ "keyboard": [
106
+ "Arrow Up/Down: navigate between span rows",
107
+ "Arrow Right: expand collapsed span children or open span detail",
108
+ "Arrow Left: collapse expanded children or close span detail",
109
+ "Enter: toggle span detail panel",
110
+ "F: focus the filter bar",
111
+ "E: toggle error-only filter",
112
+ "Home: jump to root span",
113
+ "End: jump to last span"
114
+ ],
115
+ "announcements": [
116
+ "Span: {service} {operation}, duration {duration}ms, {status}",
117
+ "Expanded {childCount} child spans under {operation}",
118
+ "Detail panel opened for {service} {operation}",
119
+ "Filter applied: showing {count} of {total} spans",
120
+ "Error span: {service} {operation} failed after {duration}ms"
121
+ ]
122
+ }
123
+ }