@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,94 @@
1
+ {
2
+ "$schema": "https://decantr.ai/schemas/pattern.v2.json",
3
+ "id": "service-catalog",
4
+ "version": "1.0.0",
5
+ "decantr_compat": ">=2.0.0",
6
+ "name": "Service Catalog",
7
+ "description": "Grid or list of deployable services with status, region, and operational metadata for cloud and platform consoles.",
8
+ "dependencies": {
9
+ "patterns": {},
10
+ "styles": {},
11
+ "requires_core": {
12
+ "components": [
13
+ "Card",
14
+ "Badge",
15
+ "Button",
16
+ "icon"
17
+ ],
18
+ "charts": []
19
+ }
20
+ },
21
+ "components": [
22
+ "Card",
23
+ "Badge",
24
+ "Button",
25
+ "icon"
26
+ ],
27
+ "default_preset": "grid",
28
+ "presets": {
29
+ "grid": {
30
+ "description": "Responsive service card grid for browsing platform services and environments.",
31
+ "layout": {
32
+ "layout": "grid",
33
+ "atoms": "_grid _gc1 _md:gc2 _xl:gc3 _gap4",
34
+ "slots": {
35
+ "toolbar": "Optional search, filters, and environment selectors",
36
+ "service-card": "Single service tile with icon, name, status, and metadata",
37
+ "service-actions": "Contextual actions such as open, deploy, or inspect"
38
+ }
39
+ }
40
+ },
41
+ "list": {
42
+ "description": "Denser row-based service catalog for operator-heavy pages.",
43
+ "layout": {
44
+ "layout": "stack",
45
+ "atoms": "_flex _col _gap3",
46
+ "slots": {
47
+ "toolbar": "Optional search and filter row",
48
+ "service-row": "Single service row with status and actions"
49
+ }
50
+ }
51
+ }
52
+ },
53
+ "default_layout": {
54
+ "layout": "grid",
55
+ "atoms": "_grid _gc1 _md:gc2 _xl:gc3 _gap4",
56
+ "slots": {
57
+ "toolbar": "Search and filter controls",
58
+ "service-card": "Service catalog card",
59
+ "service-actions": "Secondary actions"
60
+ }
61
+ },
62
+ "visual_brief": "Operational service catalog with clean, status-aware cards. Each item should surface the service identity, current health, region or environment, and a few practical facts without reading like a cluttered data table. The grid should feel like a modern control plane, not a marketing gallery.",
63
+ "responsive": {
64
+ "mobile": "Single-column stack. Metadata wraps cleanly and actions collapse into a single trailing affordance if needed.",
65
+ "tablet": "Two-column grid with enough width for service status, region, and one or two secondary facts.",
66
+ "desktop": "Three-column grid or dense list view depending on operator density. Cards remain easy to scan at a glance."
67
+ },
68
+ "layout_hints": {
69
+ "identity_first": "Lead with service name, type icon, and health state. Secondary metadata like region, deployment target, or runtime should support that first read.",
70
+ "operator_density": "Avoid stuffing every service property into the card. Prefer a small, repeatable metadata cluster and leave deeper diagnostics for drill-down views.",
71
+ "toolbar_rhythm": "If a toolbar is present, keep it visually separate from the grid. Parent workspace layout owns section spacing; the pattern owns only the toolbar-to-grid transition."
72
+ },
73
+ "motion": {
74
+ "micro": "Cards may lift or sharpen their border on hover. Status indicators may pulse subtly only when in degraded or deploying states.",
75
+ "transitions": "Filtering or sorting should cross-fade or stagger cards in gently without disrupting scanability."
76
+ },
77
+ "interactions": [
78
+ "animate-on-mount"
79
+ ],
80
+ "accessibility": {
81
+ "role": "region",
82
+ "aria-label": "Service catalog",
83
+ "keyboard": [
84
+ "Tab should move through toolbar controls, then services, then any row or card actions in reading order."
85
+ ],
86
+ "announcements": [
87
+ "Each service should expose name, status, and key metadata semantically so health is not color-only."
88
+ ]
89
+ },
90
+ "composition": {
91
+ "ServiceCatalog": "Stack(d-section, operator) > [Toolbar?(d-control cluster) + ServiceGrid(d-data, responsive) > ServiceCard[]]",
92
+ "ServiceCard": "Card(d-surface, hoverable) > [Identity(icon + name + status) + MetaRow(d-annotation)* + Actions?(d-interactive cluster)]"
93
+ }
94
+ }
@@ -0,0 +1,133 @@
1
+ {
2
+ "$schema": "https://decantr.ai/schemas/pattern.v2.json",
3
+ "id": "service-map",
4
+ "version": "1.0.0",
5
+ "decantr_compat": ">=2.0.0",
6
+ "name": "Service Map",
7
+ "description": "Topology graph showing service dependencies with health indicators, animated traffic flow, and interactive detail panels for monitoring distributed service architectures.",
8
+ "category": "observability",
9
+ "tags": [
10
+ "2026",
11
+ "observability",
12
+ "topology",
13
+ "service-map",
14
+ "dependencies",
15
+ "health",
16
+ "monitoring"
17
+ ],
18
+ "components": [
19
+ "MapCanvas",
20
+ "ServiceNode",
21
+ "DependencyEdge",
22
+ "HealthIndicator",
23
+ "DetailPanel",
24
+ "Legend"
25
+ ],
26
+ "default_preset": "graph",
27
+ "presets": {
28
+ "graph": {
29
+ "description": "Force-directed graph layout where service nodes repel each other and edges act as springs — organic arrangement reveals natural clusters and heavily-connected hubs",
30
+ "layout": {
31
+ "layout": "spatial",
32
+ "atoms": "_relative _wfull _hfull _overflow-hidden"
33
+ }
34
+ },
35
+ "hierarchy": {
36
+ "description": "Tree layout with entry-point services at the top and downstream dependencies flowing downward — reveals request flow direction and service depth in the call chain",
37
+ "layout": {
38
+ "layout": "spatial",
39
+ "atoms": "_relative _wfull _hfull _overflow-auto"
40
+ }
41
+ },
42
+ "grid": {
43
+ "description": "Organized grid layout where services are arranged in a structured matrix grouped by team or domain — edges route orthogonally between nodes for a clean architectural diagram feel",
44
+ "layout": {
45
+ "layout": "grid",
46
+ "atoms": "_grid _gap8 _wfull _hfull _overflow-auto _p8"
47
+ }
48
+ }
49
+ },
50
+ "visual_brief": "Force-directed graph rendered on a dark canvas where each service is a rounded rectangle node (approximately 120x60px) containing a small service type icon (database cylinder, server rack, cloud function, etc.), the service name in medium-weight text below the icon, and a small circular health dot in the top-right corner glowing green (healthy), yellow (degraded), or red (down). Curved bezier edges connect dependent services with animated dot particles flowing along the edge in the direction of requests. Edge thickness scales with traffic volume — thin hairlines for low-traffic dependencies, thick 4px lines for high-traffic paths. Hovering a node highlights all its direct dependency edges in the node's health color and fades all unrelated nodes and edges to 20% opacity. A detail panel slides in from the right side showing the selected service's key metrics: p50/p95/p99 latency as a mini histogram, error rate as a percentage with trend arrow, requests per second as a sparkline, and a list of direct upstream and downstream dependencies. A legend in the bottom-left corner explains health dot colors, edge thickness meaning, and node icon types. The hierarchy preset arranges nodes top-to-bottom with straight downward edges. The grid preset places nodes in labeled group boxes.",
51
+ "default_layout": {
52
+ "layout": "spatial",
53
+ "atoms": "_relative _wfull _hfull _overflow-hidden",
54
+ "slots": {
55
+ "map-canvas": "The main rendering area occupying the full container. Supports pan (click-drag on background) and zoom (scroll wheel or pinch). Renders a subtle dot-grid background pattern for spatial reference. All service nodes and dependency edges are positioned within this canvas using absolute or SVG coordinates. The canvas auto-fits all nodes on initial load with padding.",
56
+ "service-node": "Repeating slot — one per service. A rounded rectangle (border-radius 12px) with a subtle border and semi-transparent background. Contains: a small icon representing the service type (16px), the service name (14px medium weight), and a HealthIndicator dot (8px circle) in the top-right corner. The node has a subtle drop shadow. On hover, the node elevates slightly and its border color intensifies to match its health status. Selected nodes show a ring highlight.",
57
+ "dependency-edge": "Repeating slot — one per service-to-service dependency. A curved SVG path connecting two service nodes. Animated dot particles (3px circles) travel along the path from caller to callee. Particle speed is proportional to request rate. Edge color defaults to a muted neutral but shifts to the caller's health color on hover. An optional small label at the midpoint shows request rate or protocol (REST, gRPC, etc.).",
58
+ "detail-panel": "Right-side panel (320px wide) that slides in when a service node is selected. Header shows service name, type badge, and health status with uptime percentage. Body contains: latency section with p50/p95/p99 values and a mini distribution chart, error rate with a small trend sparkline, throughput as requests/second with a sparkline, and a dependencies list showing upstream callers and downstream callees as clickable links that re-center the map on that service.",
59
+ "legend": "Small overlay card anchored to the bottom-left corner of the canvas. Shows: health dot color meanings (green=healthy, yellow=degraded, red=down), edge thickness scale (thin=low traffic, thick=high traffic), and node icon legend for service types."
60
+ }
61
+ },
62
+ "responsive": {
63
+ "mobile": "Map canvas fills the screen with touch-based pan and pinch-to-zoom. Service nodes render at minimum size with name only (no icon). Detail panel opens as a bottom sheet instead of a side panel. Legend hides behind an info button. Edges simplified to straight lines without particles.",
64
+ "tablet": "Standard force-directed layout with touch support. Detail panel slides in from the right at reduced width (280px). Service nodes show icon and name. Edge particles render at reduced density.",
65
+ "desktop": "Full interactive map with hover effects, animated edge particles, and side detail panel. Zoom controls in the top-right corner. Legend always visible. Generous node sizing with icons, names, and health indicators."
66
+ },
67
+ "layout_hints": {
68
+ "map_ownership": "This pattern owns the topology canvas, overlays, and detail-panel anchoring. Parent dashboards should frame it as one observability surface rather than wrapping it in extra competing panels.",
69
+ "node_priority": "Service health and dependency structure should be readable before fine-grained metrics. The detail panel is where deeper analytics belong.",
70
+ "overlay_rhythm": "Legend, controls, and detail panel should feel like supporting map chrome. Keep them visually lighter than the node graph itself.",
71
+ "node_label_overflow": "Service node labels MUST handle overflow gracefully — set `max-width: 12rem; overflow: hidden; text-overflow: ellipsis` AND attach a `data-tooltip={fullServiceName}` attribute that surfaces the complete name on hover via the hover-tooltip pattern. A truncated \"payments-...\" with no tooltip is a broken affordance — the user cannot read the truncated half.",
72
+ "empty_canvas_fit": "When the topology occupies less than ~70% of the canvas viewport, EITHER auto-fit-zoom the graph to fill the viewport OR add an explicit \"Fit to view\" button in the canvas controls. Empty canvas space below the graph reads as wasted real estate.",
73
+ "connection_line_legibility": "Service-to-service connection lines should use `stroke: var(--d-border); stroke-width: 1.5px; opacity: 0.6` MINIMUM. Lines too light/thin disappear on dark backgrounds and the dependency relationships become unreadable.",
74
+ "edge_anchoring": "CRITICAL: Connection lines MUST anchor to d-port elements on each node, NOT to the node's outer rectangle. Each ServiceNode renders one or more d-port[data-side=\"left|right|top|bottom\"] children. The d-port treatment positions the port dot 4px OUTSIDE the node edge — that gives SVG paths a predictable anchor coordinate that visually attaches to the node border. Get coordinates via `port.getBoundingClientRect()` (ref the port element) and translate into the canvas SVG's coordinate space (subtract canvas rect offset, divide by current zoom factor). NEVER hand-compute port positions from node bounding rects + offsets — the math always drifts and lines float disconnected.",
75
+ "edge_line_shape": "Edges MUST be smooth cubic-bezier curves, NOT orthogonal stair-step paths. Path data formula: `M startX,startY C (startX + dx*0.5),startY (endX - dx*0.5),endY endX,endY` where `dx = abs(endX - startX)`. Curves communicate request flow direction visually; stair-step paths look like hand-drawn diagrams. Stroke: `var(--d-border)` at 1.5px stroke-width and opacity 0.6 baseline; on hover or selection elevate to the caller's health color at full opacity.",
76
+ "edge_recompute_on_drag": "Edge paths MUST re-render on every pointer-move during node drag (and on canvas pan/zoom). If lines are computed once at mount and never updated, dragging a node leaves the edge anchored to its old position — appearing visually disconnected. Use the d-port refs + getBoundingClientRect inside a `requestAnimationFrame` loop during drag, or recompute on every state update if the canvas re-renders.",
77
+ "edge_particle_animation": "Animated dot particles travel along each edge from caller to callee at speed proportional to RPS. Implement via SVG `<circle>` with `<animateMotion path={pathData} dur=\"2s\" repeatCount=\"indefinite\" />` OR via CSS `offset-path: path(...)` with motion-distance keyframes. Particles render only on edges where the connected service is healthy — skip particles on red/down edges to reduce visual noise on degraded systems."
78
+ },
79
+ "motion": {
80
+ "micro": {
81
+ "node-hover": "scale(1→1.05) + elevation increase + border-color shift 150ms ease-out",
82
+ "edge-highlight": "opacity 0.4→1 + color shift 200ms ease-out"
83
+ },
84
+ "transitions": {
85
+ "detail-slide": "translateX(100%→0) 300ms ease-out for panel entry",
86
+ "focus-fade": "opacity 1→0.2 300ms ease-out on unfocused nodes/edges",
87
+ "layout-reflow": "node positions lerp 600ms ease-in-out when switching presets"
88
+ },
89
+ "ambient": {
90
+ "edge-particles": "dot particles flowing along edges at speed proportional to request rate, continuous",
91
+ "health-pulse": "scale(1→1.3→1) + opacity pulse 2s ease-in-out infinite on degraded/down health dots"
92
+ }
93
+ },
94
+ "interactions": [
95
+ "drag-nodes",
96
+ "pan-background",
97
+ "zoom-scroll",
98
+ "click-select",
99
+ "hover-tooltip",
100
+ "status-pulse",
101
+ "animate-on-mount",
102
+ "live-simulation",
103
+ "real-time-updates"
104
+ ],
105
+ "composition": {
106
+ "ServiceMap": "Container(d-section, spatial) > [MapCanvas > ServiceNode*(d-interactive) + DependencyEdge*] + DetailPanel?(d-surface) + Legend(d-annotation)",
107
+ "MapCanvas": "Canvas(d-data, pannable, zoomable, dot-grid-bg) > [DependencyEdge* + ServiceNode*]",
108
+ "ServiceNode": "Node(d-interactive, rounded-rect) > [TypeIcon + ServiceName + HealthIndicator(d-annotation, dot)]",
109
+ "DependencyEdge": "Edge(d-data, curved, animated-particles) > [PathLine + FlowParticles + MidpointLabel?]",
110
+ "DetailPanel": "Panel(d-surface, slide-right) > [Header > [ServiceName + TypeBadge + HealthStatus] + Metrics > [Latency + ErrorRate + Throughput] + DependencyList]",
111
+ "Legend": "Card(d-annotation, bottom-left) > [HealthColors + EdgeScale + NodeIcons]"
112
+ },
113
+ "accessibility": {
114
+ "role": "img",
115
+ "aria-label": "Service dependency map showing topology and health status",
116
+ "keyboard": [
117
+ "Tab: cycle focus between service nodes in alphabetical order",
118
+ "Enter: select focused node and open detail panel",
119
+ "Escape: close detail panel and deselect node",
120
+ "Arrow keys: pan the map canvas",
121
+ "Plus/Minus: zoom in/out",
122
+ "0: reset zoom to fit all nodes",
123
+ "L: toggle legend visibility"
124
+ ],
125
+ "announcements": [
126
+ "Service {name}: {healthStatus}, {requestRate} req/s, {errorRate}% error rate",
127
+ "Detail panel opened for {name}",
128
+ "{name} depends on {count} downstream services",
129
+ "{count} upstream services call {name}",
130
+ "Map zoomed to {zoomLevel}%"
131
+ ]
132
+ }
133
+ }
@@ -0,0 +1,62 @@
1
+ {
2
+ "$schema": "https://decantr.ai/schemas/pattern.v2.json",
3
+ "id": "session-inspector",
4
+ "version": "1.1.0",
5
+ "decantr_compat": ">=2.0.0",
6
+ "name": "Session Inspector",
7
+ "description": "Contextual inspector panel for producer sessions showing selected stem metadata, automation values, collaborator presence, comments, export readiness, and split status.",
8
+ "category": "music",
9
+ "tags": ["2026", "music", "daw", "inspector", "metadata", "collaboration", "export"],
10
+ "components": ["SelectedStemCard", "AutomationSummary", "PresenceList", "CommentStack", "ExportReadiness", "SplitStatus"],
11
+ "default_preset": "aside",
12
+ "presets": {
13
+ "aside": {
14
+ "description": "Right-side inspector for desktop DAW shells",
15
+ "layout": { "layout": "stack", "atoms": "_flex _flex-col _gap-4 _bg-bg _border-l _p-4" }
16
+ },
17
+ "sheet": {
18
+ "description": "Bottom sheet inspector for mobile DAW shells",
19
+ "layout": { "layout": "stack", "atoms": "_flex _flex-col _gap-3 _bg-surface _border-t _p-4" }
20
+ }
21
+ },
22
+ "visual_brief": "A dense right-side production inspector with compact modules rather than big cards. It shows selected stem/region, automation parameters, plugin chain summary, collaborator cursors, comments, export readiness checks, and split validation. It can also act as a desktop sidecar for track crate, collaborator ops, room monitor, and settings guardrail routes when those pages need production context. Use small headings, tokenized chips, status dots, monospace values, separators, and inline actions so it feels like a serious utility panel. Avoid marketing copy, oversized empty states, sparse wide panels, and decorative card nesting.",
23
+ "default_layout": {
24
+ "layout": "stack",
25
+ "atoms": "_flex _flex-col _gap-4 _bg-bg _border-l _p-4",
26
+ "slots": {
27
+ "selected-object": "Current stem/region metadata with color, gain, pan, key, and duration.",
28
+ "automation": "Compact automation lane summary with editable values.",
29
+ "collaboration": "Presence, comments, and active edit cursors.",
30
+ "release-readiness": "Bounce/export readiness and split validation."
31
+ }
32
+ },
33
+ "composition": {
34
+ "SessionInspector": "Aside(stack) > [SelectedStemCard + AutomationSummary + PresenceList + CommentStack + ExportReadiness + SplitStatus]"
35
+ },
36
+ "motion": {
37
+ "micro": {
38
+ "selection-change": "modules crossfade in 150ms when selected region changes",
39
+ "status-update": "status chips pulse once when a validation state changes"
40
+ }
41
+ },
42
+ "interactions": ["hover-reveal", "status-pulse", "real-time-updates", "keyboard-navigation"],
43
+ "responsive": {
44
+ "mobile": {
45
+ "layout": "alternate-pattern",
46
+ "alternate_pattern_id": "session-inspector",
47
+ "notes": "Render as a tab panel or bottom sheet opened from selected stem/status controls. Keep selected item, readiness, and collaborator state visible before long notes."
48
+ },
49
+ "desktop": "Right aside stays visible for active sessions and can collapse to icon rail. On secondary desktop routes, use inspector-like sidecars to prevent sparse card-only layouts."
50
+ },
51
+ "accessibility": {
52
+ "role": "complementary",
53
+ "aria-label": "Session inspector",
54
+ "keyboard": ["I: toggle inspector", "Esc: close inspector sheet on mobile"],
55
+ "announcements": ["Inspector showing {item}", "Export readiness {status}", "Split total {percent}%"]
56
+ },
57
+ "layout_hints": {
58
+ "density": "Favor concise stacked utility rows over marketing cards.",
59
+ "desktop_sidecar": "A sidecar should carry real state: queue, readiness, latency, voice sync, export checks, or selected-item metadata.",
60
+ "contextuality": "Inspector content must reflect the selected track, region, or room state."
61
+ }
62
+ }
@@ -0,0 +1,89 @@
1
+ {
2
+ "$schema": "https://decantr.ai/schemas/pattern.v2.json",
3
+ "id": "session-manager",
4
+ "version": "1.0.0",
5
+ "decantr_compat": ">=2.0.0",
6
+ "name": "Session Manager",
7
+ "description": "Active sessions panel showing current device, other sessions with device info, location, last active, and revoke controls.",
8
+ "dependencies": {
9
+ "patterns": {},
10
+ "styles": {},
11
+ "requires_core": {
12
+ "components": [
13
+ "Button",
14
+ "Badge",
15
+ "icon"
16
+ ],
17
+ "charts": []
18
+ }
19
+ },
20
+ "components": [
21
+ "Button",
22
+ "Badge",
23
+ "icon"
24
+ ],
25
+ "default_preset": "standard",
26
+ "presets": {
27
+ "standard": {
28
+ "description": "Full session list with current device highlighted",
29
+ "components": [
30
+ "Button",
31
+ "Badge",
32
+ "icon"
33
+ ],
34
+ "layout": {
35
+ "layout": "stack",
36
+ "atoms": "_flex _col _gap6",
37
+ "slots": {
38
+ "current-session": "This device session card with 'Current' badge",
39
+ "sessions-list": "Other active sessions list",
40
+ "revoke-all": "Logout from all devices button"
41
+ }
42
+ }
43
+ }
44
+ },
45
+ "default_layout": {
46
+ "layout": "stack",
47
+ "atoms": "_flex _col _gap6",
48
+ "slots": {
49
+ "current-session": "This device with 'Current' badge",
50
+ "sessions-list": "Other sessions with device, browser, location, last active",
51
+ "revoke-all": "Sign out everywhere button"
52
+ }
53
+ },
54
+ "visual_brief": "Settings panel showing active login sessions. The current session is highlighted at the top with a 'Current Session' badge, showing device name (e.g., 'MacBook Pro — Chrome'), location, and last active time. Below, a list of other sessions, each showing device icon (desktop/mobile/tablet), browser name, location (city, country), last active timestamp, and a 'Revoke' button on the right. A 'Sign Out All Other Sessions' destructive button sits at the bottom of the list. Sessions with suspicious activity show a warning icon.",
55
+ "layout_hints": {
56
+ "current_session_priority": "The current session should be visually distinct and always feel anchored above the revocable session list.",
57
+ "destructive_spacing": "Revoke actions and the sign-out-everywhere action need clear separation from passive session metadata so they do not read like inline labels.",
58
+ "suspicious_state": "Suspicious-session states should be obvious through icon, text, and treatment rather than relying on color alone."
59
+ },
60
+ "responsive": {
61
+ "mobile": "Sessions stack as full-width cards. Device info and location on separate lines. Revoke button full-width per session. Sign Out All button at the bottom.",
62
+ "tablet": "Standard list layout. Device info and location inline. Revoke buttons on the right.",
63
+ "desktop": "Full list with all information inline per row. Comfortable spacing between sessions."
64
+ },
65
+ "motion": {
66
+ "micro": "Hover and focus states on revoke controls may brighten subtly, but session rows should otherwise remain stable and administrative.",
67
+ "transitions": "Revoked-session removal and warning-state changes should animate softly over 150-220ms without collapsing the entire list abruptly."
68
+ },
69
+ "interactions": [
70
+ "animate-on-mount"
71
+ ],
72
+ "accessibility": {
73
+ "role": "region",
74
+ "aria-label": "Session manager",
75
+ "keyboard": [
76
+ "Tab moves through current-session controls, row-level revoke actions, and sign-out-everywhere actions in order."
77
+ ],
78
+ "announcements": [
79
+ "Current session, suspicious activity, and revoke outcomes should be announced clearly."
80
+ ],
81
+ "focus_management": "After revoking a session, preserve focus on the next logical row action or the bulk sign-out control."
82
+ },
83
+ "composition": {
84
+ "SessionManager": "Container(d-section, flex-col, gap-4) > [CurrentSession + OtherSessions + RevokeAllButton?]",
85
+ "CurrentSession": "Card(d-surface, accent-border) > [DeviceIcon + DeviceInfo > [Name(font-medium) + Location + LastActive(text-muted)] + CurrentBadge(d-annotation)]",
86
+ "OtherSessions": "List(flex-col) > SessionRow[]",
87
+ "SessionRow": "Row(d-data-row) > [DeviceIcon + DeviceInfo > [Name + Location + LastActive(text-muted)] + RevokeButton(d-interactive, variant: destructive)]"
88
+ }
89
+ }
@@ -0,0 +1,106 @@
1
+ {
2
+ "$schema": "https://decantr.ai/schemas/pattern.v2.json",
3
+ "id": "settings-nav",
4
+ "version": "1.0.0",
5
+ "decantr_compat": ">=2.0.0",
6
+ "name": "Settings Nav",
7
+ "description": "Vertical navigation list for settings and preferences pages with grouped sections, active state highlighting, icons, and badges. Collapses to horizontal tabs on mobile.",
8
+ "category": "navigation",
9
+ "tags": [
10
+ "settings",
11
+ "navigation",
12
+ "sidebar",
13
+ "tabs",
14
+ "preferences"
15
+ ],
16
+ "components": [
17
+ "NavItem",
18
+ "NavGroup",
19
+ "Icon",
20
+ "Badge",
21
+ "Text"
22
+ ],
23
+ "default_preset": "standard",
24
+ "presets": {
25
+ "standard": {
26
+ "description": "Vertical sidebar navigation with grouped sections and icon-prefixed items — used as a settings page sidebar alongside a content panel",
27
+ "layout": {
28
+ "layout": "stack",
29
+ "atoms": "_flex _col _gap1 _py2"
30
+ }
31
+ },
32
+ "compact": {
33
+ "description": "Condensed vertical list without group headings — suitable for narrow sidebars or drawers with limited items",
34
+ "layout": {
35
+ "layout": "stack",
36
+ "atoms": "_flex _col _gap0 _py1"
37
+ }
38
+ },
39
+ "tabs": {
40
+ "description": "Horizontal tab bar variant for top-of-page navigation — items render as underlined tabs rather than a sidebar list",
41
+ "layout": {
42
+ "layout": "row",
43
+ "atoms": "_flex _row _gap0 _border-b"
44
+ }
45
+ }
46
+ },
47
+ "visual_brief": "A vertical navigation list on the left side of a settings page. Items are grouped under small uppercase section headings (d-label). Each item is a row with a 16-20px icon on the left, label text in the middle, and an optional badge or count on the right. Active item has a primary-color left border (3px), primary-tinted background, and primary text color. Hover state shows a subtle surface background tint. Items have 8-10px vertical padding and 12px horizontal padding. Groups are separated by 16px spacing and a muted horizontal divider. On mobile the entire nav collapses to a horizontal scrollable tab bar at the top, with icon-only items and the active tab underlined.",
48
+ "layout_hints": {
49
+ "active_indicator": "Active item uses a 3px left border in var(--d-primary) color plus a light primary background tint: background: color-mix(in srgb, var(--d-primary) 10%, transparent).",
50
+ "group_headings": "Section group headings use the d-label class. They are not clickable, just visual separators.",
51
+ "icon_alignment": "Icons are 16-20px, vertically centered with the label text. Use flex + align-items: center.",
52
+ "mobile_tabs": "On mobile (<640px), render as a horizontal scrollable row of tab items. Show icon + short label. Active tab has a bottom border instead of left border."
53
+ },
54
+ "default_layout": {
55
+ "layout": "stack",
56
+ "atoms": "_flex _col _gap1 _py2",
57
+ "slots": {
58
+ "group-heading": "Uppercase section label (d-label) separating navigation groups. Not interactive.",
59
+ "nav-item": "Repeating slot — one per settings page. Renders as a flex row with icon (left), label (center), and optional badge/count (right). Active state indicated by left border + background tint. Hover shows surface background.",
60
+ "divider": "Thin horizontal line (1px border-top, var(--d-border)) between groups."
61
+ }
62
+ },
63
+ "accessibility": {
64
+ "role": "navigation",
65
+ "aria-label": "Settings navigation",
66
+ "keyboard": [
67
+ "Arrow Up/Down navigates between items",
68
+ "Enter activates the focused item",
69
+ "Home jumps to first item",
70
+ "End jumps to last item"
71
+ ],
72
+ "announcements": [
73
+ "Navigated to {section} settings",
74
+ "{item} selected, {badge_count} notifications"
75
+ ],
76
+ "focus_management": "Focus remains on the activated item after navigation. On mobile tab switch, focus moves to the content panel."
77
+ },
78
+ "responsive": {
79
+ "mobile": "Collapses to a horizontal scrollable tab bar at the top of the page. Items show icon + abbreviated label. Active tab has a 2px bottom border in primary color. Group headings are hidden. Horizontal scroll with momentum enabled.",
80
+ "tablet": "Standard vertical sidebar at 200-240px width. All items and group headings visible. Badge counts shown.",
81
+ "desktop": "Full vertical sidebar at 240-280px width. All items, group headings, badges, and descriptions visible. Sticky positioning within scroll container."
82
+ },
83
+ "composition": {
84
+ "SettingsNav": "Nav(d-section, flex-col, gap-1, sticky) > [NavGroup[]]",
85
+ "NavGroup": "Stack(flex-col, gap-0) > [GroupHeading(d-label)? + NavItem[] + Divider?]",
86
+ "NavItem": "Link(d-interactive, flex, align-center, gap-3, px-3, py-2) > [Icon(16px) + Label(text-sm) + Badge?(d-annotation, ml-auto)]"
87
+ },
88
+ "motion": {
89
+ "micro": {
90
+ "hover": "background-color 0.15s ease",
91
+ "active": "border-color 0.1s ease, background-color 0.1s ease"
92
+ },
93
+ "transitions": {
94
+ "page_switch": "Content panel cross-fades on nav item selection (0.15s ease)"
95
+ }
96
+ },
97
+ "interactions": [
98
+ "hover-reveal",
99
+ "keyboard-navigation"
100
+ ],
101
+ "io": {
102
+ "consumes": ["active-route", "nav-items", "badge-counts"],
103
+ "produces": ["navigation-event"],
104
+ "actions": ["navigate"]
105
+ }
106
+ }
@@ -0,0 +1,157 @@
1
+ {
2
+ "$schema": "https://decantr.ai/schemas/pattern.v2.json",
3
+ "id": "share-modal",
4
+ "version": "1.0.0",
5
+ "decantr_compat": ">=2.0.0",
6
+ "name": "Share Modal",
7
+ "description": "Invite collaborators and manage document sharing. Includes email invite, shareable link, and current collaborators management.",
8
+ "dependencies": {
9
+ "patterns": {},
10
+ "styles": {},
11
+ "requires_core": {
12
+ "components": [
13
+ "Button",
14
+ "Input",
15
+ "Select",
16
+ "Avatar",
17
+ "Tabs",
18
+ "icon"
19
+ ],
20
+ "charts": []
21
+ }
22
+ },
23
+ "components": [
24
+ "Button",
25
+ "Input",
26
+ "Select",
27
+ "Avatar",
28
+ "Tabs",
29
+ "icon"
30
+ ],
31
+ "default_preset": "invite",
32
+ "presets": {
33
+ "invite": {
34
+ "description": "Email invite form with role selector",
35
+ "components": [
36
+ "Button",
37
+ "Input",
38
+ "Select",
39
+ "icon"
40
+ ],
41
+ "layout": {
42
+ "layout": "modal",
43
+ "atoms": "_flex _col _gap4 _p6 _w[480px]",
44
+ "slots": {
45
+ "header": "Modal title and close button",
46
+ "invite-form": "Email input with role selector",
47
+ "send-button": "Send invitation button"
48
+ }
49
+ }
50
+ },
51
+ "link": {
52
+ "description": "Shareable link management with copy-to-clipboard URL, permission settings, and expiration controls",
53
+ "components": [
54
+ "Button",
55
+ "Input",
56
+ "Select",
57
+ "icon"
58
+ ],
59
+ "layout": {
60
+ "layout": "column",
61
+ "atoms": "_flex _col _gap4",
62
+ "slots": {
63
+ "link-display": "Shareable URL with copy button",
64
+ "link-settings": "Permission level for link access",
65
+ "toggle": "Enable/disable link sharing"
66
+ }
67
+ }
68
+ },
69
+ "members": {
70
+ "description": "Current collaborators list with role management",
71
+ "components": [
72
+ "Avatar",
73
+ "Button",
74
+ "Select",
75
+ "icon"
76
+ ],
77
+ "layout": {
78
+ "layout": "column",
79
+ "atoms": "_flex _col _gap2",
80
+ "slots": {
81
+ "members-list": "List of current collaborators with roles",
82
+ "pending": "Pending invitations"
83
+ }
84
+ }
85
+ }
86
+ },
87
+ "default_layout": {
88
+ "layout": "modal",
89
+ "atoms": "_flex _col _gap4 _p6 _w[480px]",
90
+ "slots": {
91
+ "tabs": "Invite / Link / Members navigation",
92
+ "invite-form": "Email input with role selector and autocomplete",
93
+ "link-settings": "Shareable link toggle and permissions",
94
+ "members-list": "Current collaborators with role management",
95
+ "pending": "Pending invitations list"
96
+ }
97
+ },
98
+ "io": {
99
+ "consumes": [
100
+ "document",
101
+ "members",
102
+ "pending",
103
+ "suggestions"
104
+ ],
105
+ "produces": [
106
+ "invite",
107
+ "role-change",
108
+ "remove-member"
109
+ ],
110
+ "actions": [
111
+ "send-invite",
112
+ "cancel-invite",
113
+ "change-role",
114
+ "remove-member",
115
+ "toggle-link",
116
+ "copy-link"
117
+ ]
118
+ },
119
+ "visual_brief": "Modal dialog with tabs for Invite, Link, and Members. The Invite tab shows an email input with autocomplete, a role dropdown (Viewer, Editor, Admin), and a Send button. The Link tab has a toggle to enable/disable shareable link, the link URL in a copy-able input, and permission settings (view/edit, expiration). The Members tab lists current collaborators as rows with avatar, name, email, role dropdown, and a remove button. Pending invitations show an 'Invited' badge with a resend option. The modal header shows the document or resource name being shared.",
120
+ "responsive": {
121
+ "mobile": "Modal takes near-full screen. Tabs render as a top bar. Email input full-width. Member list scrolls vertically. Role dropdowns use native selects.",
122
+ "tablet": "Centered modal at 520px width. Standard tab navigation. Member list comfortable.",
123
+ "desktop": "Centered modal at 560px width. Full tab layout. Member management with inline role selectors."
124
+ },
125
+ "layout_hints": {
126
+ "sharing_priority": "Lead with the current resource context and the simplest sharing action first. Invite, link, and members tabs should feel like different lenses on the same access model, not separate tools.",
127
+ "tab_role": "Tabs should preserve a stable modal frame while changing only the relevant access workflow underneath.",
128
+ "member_clarity": "Current access state and pending invites should stay visually distinct so permission management feels trustworthy and easy to audit."
129
+ },
130
+ "motion": {
131
+ "micro": "Tab changes, invite success, and copy-link feedback may sharpen or fade subtly to confirm access actions.",
132
+ "transitions": "The modal should open and switch tabs smoothly enough to preserve context without feeling like a separate page navigation."
133
+ },
134
+ "interactions": [
135
+ "animate-on-mount",
136
+ "focus-trap",
137
+ "keyboard-navigation"
138
+ ],
139
+ "accessibility": {
140
+ "role": "dialog",
141
+ "aria-label": "Share modal",
142
+ "keyboard": [
143
+ "Focus should move into the active share flow immediately, with tabs, invite fields, link controls, and member actions reachable in order."
144
+ ],
145
+ "announcements": [
146
+ "Resource name, active tab, pending invite state, and role changes should be communicated semantically so sharing state is understandable without relying on modal layout alone."
147
+ ]
148
+ },
149
+ "composition": {
150
+ "ShareModal": "Modal(d-surface, centered) > [Header + Tabs + TabContent]",
151
+ "Header": "Row(space-between) > [Title(heading3) + CloseButton(d-interactive)]",
152
+ "Tabs": "TabBar(d-control) > [InviteTab + LinkTab + MembersTab]",
153
+ "InviteForm": "Section > [EmailInput(d-control, autocomplete) + RoleSelect(d-control) + SendButton(d-interactive, variant: primary)]",
154
+ "MembersList": "List(flex-col) > MemberRow[]",
155
+ "MemberRow": "Row > [Avatar + Name + Email(text-muted) + RoleSelect(d-control) + RemoveButton(d-interactive, variant: ghost)]"
156
+ }
157
+ }