@contractspec/bundle.library 3.8.12 → 3.9.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 (202) hide show
  1. package/.turbo/turbo-build.log +290 -282
  2. package/CHANGELOG.md +46 -0
  3. package/dist/application/index.js +11 -11
  4. package/dist/application/mcp/cliMcp.js +6 -6
  5. package/dist/application/mcp/cliMcp.onboarding.d.ts +4 -0
  6. package/dist/application/mcp/cliMcp.onboarding.js +2 -0
  7. package/dist/application/mcp/cliMcp.test.d.ts +1 -0
  8. package/dist/application/mcp/contractsMcp.js +2 -2
  9. package/dist/application/mcp/contractsMcp.test.d.ts +1 -0
  10. package/dist/application/mcp/contractsMcpAdoptionTools.d.ts +3 -0
  11. package/dist/application/mcp/contractsMcpAdoptionTools.js +2 -0
  12. package/dist/application/mcp/contractsMcpResources.js +1 -1
  13. package/dist/application/mcp/contractsMcpTools.js +1 -1
  14. package/dist/application/mcp/contractsMcpTypes.d.ts +16 -0
  15. package/dist/application/mcp/index.js +11 -11
  16. package/dist/components/docs/DocsIndexPage.js +1 -1
  17. package/dist/components/docs/docsManifest.js +1 -1
  18. package/dist/components/docs/examples/DocsExamplesPage.js +1 -17
  19. package/dist/components/docs/examples/ExampleShowcasePage.d.ts +1 -1
  20. package/dist/components/docs/examples/ExampleShowcasePage.js +2 -17
  21. package/dist/components/docs/examples/exampleShowcaseData.d.ts +2 -2
  22. package/dist/components/docs/examples/exampleShowcaseData.js +2 -17
  23. package/dist/components/docs/examples/exampleShowcaseData.test.d.ts +1 -0
  24. package/dist/components/docs/examples/index.js +2 -17
  25. package/dist/components/docs/getting-started/CLIPage.js +5 -4
  26. package/dist/components/docs/getting-started/DataViewTutorialPage.js +44 -67
  27. package/dist/components/docs/getting-started/StartHerePage.js +4 -2
  28. package/dist/components/docs/getting-started/index.js +56 -76
  29. package/dist/components/docs/guides/GuideConnectInRepoPage.js +29 -4
  30. package/dist/components/docs/guides/GuideHostBuilderWorkbenchPage.js +21 -6
  31. package/dist/components/docs/guides/GuideReleaseCapsulesPage.d.ts +1 -0
  32. package/dist/components/docs/guides/GuideReleaseCapsulesPage.js +16 -0
  33. package/dist/components/docs/guides/GuidesIndexPage.js +1 -1
  34. package/dist/components/docs/guides/index.d.ts +1 -0
  35. package/dist/components/docs/guides/index.js +93 -39
  36. package/dist/components/docs/index.js +572 -421
  37. package/dist/components/docs/libraries/LibrariesContractsPage.js +43 -18
  38. package/dist/components/docs/libraries/LibrariesDesignSystemPage.js +43 -31
  39. package/dist/components/docs/libraries/LibrariesOverviewPage.js +1 -1
  40. package/dist/components/docs/libraries/LibrariesUIKitPage.js +42 -16
  41. package/dist/components/docs/libraries/LibrariesUIKitWebPage.d.ts +1 -0
  42. package/dist/components/docs/libraries/LibrariesUIKitWebPage.js +47 -0
  43. package/dist/components/docs/libraries/index.d.ts +1 -0
  44. package/dist/components/docs/libraries/index.js +221 -113
  45. package/dist/components/docs/specs/SpecsBuilderControlPlanePage.js +18 -3
  46. package/dist/components/docs/specs/SpecsConnectPage.js +4 -2
  47. package/dist/components/docs/specs/SpecsDataViewsPage.js +39 -32
  48. package/dist/components/docs/specs/index.js +65 -41
  49. package/dist/index.js +583 -432
  50. package/dist/node/application/index.js +11 -11
  51. package/dist/node/application/mcp/cliMcp.js +6 -6
  52. package/dist/node/application/mcp/cliMcp.onboarding.js +1 -0
  53. package/dist/node/application/mcp/contractsMcp.js +2 -2
  54. package/dist/node/application/mcp/contractsMcpAdoptionTools.js +1 -0
  55. package/dist/node/application/mcp/contractsMcpResources.js +1 -1
  56. package/dist/node/application/mcp/contractsMcpTools.js +1 -1
  57. package/dist/node/application/mcp/index.js +11 -11
  58. package/dist/node/components/docs/DocsIndexPage.js +1 -1
  59. package/dist/node/components/docs/docsManifest.js +1 -1
  60. package/dist/node/components/docs/examples/DocsExamplesPage.js +1 -17
  61. package/dist/node/components/docs/examples/ExampleShowcasePage.js +2 -17
  62. package/dist/node/components/docs/examples/exampleShowcaseData.js +2 -17
  63. package/dist/node/components/docs/examples/index.js +2 -17
  64. package/dist/node/components/docs/getting-started/CLIPage.js +5 -4
  65. package/dist/node/components/docs/getting-started/DataViewTutorialPage.js +44 -67
  66. package/dist/node/components/docs/getting-started/StartHerePage.js +4 -2
  67. package/dist/node/components/docs/getting-started/index.js +56 -76
  68. package/dist/node/components/docs/guides/GuideConnectInRepoPage.js +29 -4
  69. package/dist/node/components/docs/guides/GuideHostBuilderWorkbenchPage.js +21 -6
  70. package/dist/node/components/docs/guides/GuideReleaseCapsulesPage.js +15 -0
  71. package/dist/node/components/docs/guides/GuidesIndexPage.js +1 -1
  72. package/dist/node/components/docs/guides/index.js +93 -39
  73. package/dist/node/components/docs/index.js +572 -421
  74. package/dist/node/components/docs/libraries/LibrariesContractsPage.js +43 -18
  75. package/dist/node/components/docs/libraries/LibrariesDesignSystemPage.js +43 -31
  76. package/dist/node/components/docs/libraries/LibrariesOverviewPage.js +1 -1
  77. package/dist/node/components/docs/libraries/LibrariesUIKitPage.js +42 -16
  78. package/dist/node/components/docs/libraries/LibrariesUIKitWebPage.js +46 -0
  79. package/dist/node/components/docs/libraries/index.js +221 -113
  80. package/dist/node/components/docs/specs/SpecsBuilderControlPlanePage.js +18 -3
  81. package/dist/node/components/docs/specs/SpecsConnectPage.js +4 -2
  82. package/dist/node/components/docs/specs/SpecsDataViewsPage.js +39 -32
  83. package/dist/node/components/docs/specs/index.js +65 -41
  84. package/dist/node/index.js +583 -432
  85. package/package.json +65 -16
  86. package/src/application/mcp/cliMcp.onboarding.ts +297 -0
  87. package/src/application/mcp/cliMcp.test.ts +99 -0
  88. package/src/application/mcp/cliMcp.ts +30 -3
  89. package/src/application/mcp/contractsMcp.test.ts +65 -0
  90. package/src/application/mcp/contractsMcpAdoptionTools.ts +131 -0
  91. package/src/application/mcp/contractsMcpResources.ts +49 -0
  92. package/src/application/mcp/contractsMcpTools.ts +2 -0
  93. package/src/application/mcp/contractsMcpTypes.ts +16 -0
  94. package/src/components/docs/docsManifest.ts +12 -0
  95. package/src/components/docs/examples/DocsExamplesPage.tsx +6 -14
  96. package/src/components/docs/examples/ExampleShowcasePage.tsx +22 -18
  97. package/src/components/docs/examples/exampleShowcaseData.test.ts +22 -0
  98. package/src/components/docs/examples/exampleShowcaseData.ts +75 -50
  99. package/src/components/docs/generated/docs-index._common.json +2008 -1691
  100. package/src/components/docs/generated/docs-index.agent-console.json +377 -377
  101. package/src/components/docs/generated/docs-index.ai-chat-assistant.json +17 -17
  102. package/src/components/docs/generated/docs-index.ai-chat.json +105 -105
  103. package/src/components/docs/generated/docs-index.ai-support-bot.json +9 -9
  104. package/src/components/docs/generated/docs-index.analytics-dashboard.json +169 -169
  105. package/src/components/docs/generated/docs-index.app-config.json +137 -137
  106. package/src/components/docs/generated/docs-index.artisan-knowledge-product.json +17 -17
  107. package/src/components/docs/generated/docs-index.artisan-payments-stripe.json +33 -33
  108. package/src/components/docs/generated/docs-index.audit-trail.json +49 -49
  109. package/src/components/docs/generated/docs-index.calendar-google.json +9 -9
  110. package/src/components/docs/generated/docs-index.content-generation.json +9 -9
  111. package/src/components/docs/generated/docs-index.control-plane.json +17 -17
  112. package/src/components/docs/generated/docs-index.crm-pipeline.json +161 -161
  113. package/src/components/docs/generated/docs-index.data-grid-showcase.json +25 -17
  114. package/src/components/docs/generated/docs-index.defineExample.json +9 -9
  115. package/src/components/docs/generated/docs-index.email-gmail.json +9 -9
  116. package/src/components/docs/generated/docs-index.feature-flags.json +217 -217
  117. package/src/components/docs/generated/docs-index.files.json +177 -177
  118. package/src/components/docs/generated/docs-index.generated.ts +20 -20
  119. package/src/components/docs/generated/docs-index.harness-lab.json +9 -9
  120. package/src/components/docs/generated/docs-index.health.json +97 -97
  121. package/src/components/docs/generated/docs-index.identity-rbac.json +313 -313
  122. package/src/components/docs/generated/docs-index.in-app-docs.json +9 -9
  123. package/src/components/docs/generated/docs-index.integration-hub.json +265 -265
  124. package/src/components/docs/generated/docs-index.integration-posthog.json +9 -9
  125. package/src/components/docs/generated/docs-index.integration-stripe.json +9 -9
  126. package/src/components/docs/generated/docs-index.integration-supabase.json +9 -9
  127. package/src/components/docs/generated/docs-index.jobs.json +137 -137
  128. package/src/components/docs/generated/docs-index.kb-update-pipeline.json +129 -129
  129. package/src/components/docs/generated/docs-index.knowledge-canon.json +9 -9
  130. package/src/components/docs/generated/docs-index.learning-journey-ambient-coach.json +9 -9
  131. package/src/components/docs/generated/docs-index.learning-journey-crm-onboarding.json +49 -49
  132. package/src/components/docs/generated/docs-index.learning-journey-duo-drills.json +9 -9
  133. package/src/components/docs/generated/docs-index.learning-journey-platform-tour.json +49 -49
  134. package/src/components/docs/generated/docs-index.learning-journey-quest-challenges.json +9 -9
  135. package/src/components/docs/generated/docs-index.learning-journey-registry.json +33 -33
  136. package/src/components/docs/generated/docs-index.learning-journey-studio-onboarding.json +49 -49
  137. package/src/components/docs/generated/docs-index.learning-journey-ui-coaching.json +9 -9
  138. package/src/components/docs/generated/docs-index.learning-journey-ui-gamified.json +9 -9
  139. package/src/components/docs/generated/docs-index.learning-journey-ui-onboarding.json +9 -9
  140. package/src/components/docs/generated/docs-index.learning-journey-ui-shared.json +9 -9
  141. package/src/components/docs/generated/docs-index.learning-journey.json +241 -217
  142. package/src/components/docs/generated/docs-index.learning-patterns.json +9 -9
  143. package/src/components/docs/generated/docs-index.lifecycle-cli.json +9 -9
  144. package/src/components/docs/generated/docs-index.lifecycle-dashboard.json +9 -9
  145. package/src/components/docs/generated/docs-index.locale-jurisdiction-gate.json +65 -57
  146. package/src/components/docs/generated/docs-index.manifest.json +432 -432
  147. package/src/components/docs/generated/docs-index.marketplace.json +337 -337
  148. package/src/components/docs/generated/docs-index.meeting-recorder-providers.json +9 -9
  149. package/src/components/docs/generated/docs-index.meeting-recorder.json +49 -49
  150. package/src/components/docs/generated/docs-index.messaging-agent-actions.json +17 -17
  151. package/src/components/docs/generated/docs-index.metrics.json +201 -201
  152. package/src/components/docs/generated/docs-index.minimal.json +17 -17
  153. package/src/components/docs/generated/docs-index.mobile-demo-tasks.json +33 -33
  154. package/src/components/docs/generated/docs-index.notifications.json +65 -65
  155. package/src/components/docs/generated/docs-index.openbanking-powens.json +9 -9
  156. package/src/components/docs/generated/docs-index.openbanking.json +65 -65
  157. package/src/components/docs/generated/docs-index.opencode-cli.json +17 -17
  158. package/src/components/docs/generated/docs-index.personalization.json +9 -9
  159. package/src/components/docs/generated/docs-index.platform-acp.json +137 -137
  160. package/src/components/docs/generated/docs-index.platform-agent.json +201 -185
  161. package/src/components/docs/generated/docs-index.platform-context.json +121 -105
  162. package/src/components/docs/generated/docs-index.platform-control-plane.json +321 -321
  163. package/src/components/docs/generated/docs-index.platform-database.json +89 -89
  164. package/src/components/docs/generated/docs-index.platform-docs.json +161 -153
  165. package/src/components/docs/generated/docs-index.platform-harness.json +177 -177
  166. package/src/components/docs/generated/docs-index.platform-integrations.json +329 -329
  167. package/src/components/docs/generated/docs-index.platform-knowledge.json +57 -57
  168. package/src/components/docs/generated/docs-index.platform-provider-ranking.json +217 -185
  169. package/src/components/docs/generated/docs-index.pocket-family-office.json +129 -129
  170. package/src/components/docs/generated/docs-index.policy-safe-knowledge-assistant.json +9 -9
  171. package/src/components/docs/generated/docs-index.product-intent.json +9 -9
  172. package/src/components/docs/generated/docs-index.project-management-sync.json +9 -9
  173. package/src/components/docs/generated/docs-index.saas-boilerplate.json +209 -209
  174. package/src/components/docs/generated/docs-index.service-business-os.json +193 -193
  175. package/src/components/docs/generated/docs-index.team-hub.json +185 -185
  176. package/src/components/docs/generated/docs-index.unknown.json +521 -521
  177. package/src/components/docs/generated/docs-index.versioned-knowledge-base.json +81 -81
  178. package/src/components/docs/generated/docs-index.video-api-showcase.json +33 -33
  179. package/src/components/docs/generated/docs-index.video-docs-terminal.json +9 -9
  180. package/src/components/docs/generated/docs-index.video-marketing-clip.json +9 -9
  181. package/src/components/docs/generated/docs-index.visualization-showcase.json +17 -17
  182. package/src/components/docs/generated/docs-index.voice-providers.json +9 -9
  183. package/src/components/docs/generated/docs-index.wealth-snapshot.json +153 -153
  184. package/src/components/docs/generated/docs-index.workflow-system.json +433 -433
  185. package/src/components/docs/generated/docs-index.workspace-cli.json +9 -9
  186. package/src/components/docs/getting-started/CLIPage.tsx +10 -2
  187. package/src/components/docs/getting-started/DataViewTutorialPage.tsx +63 -70
  188. package/src/components/docs/getting-started/StartHerePage.tsx +10 -9
  189. package/src/components/docs/guides/GuideConnectInRepoPage.tsx +52 -3
  190. package/src/components/docs/guides/GuideHostBuilderWorkbenchPage.tsx +55 -6
  191. package/src/components/docs/guides/GuideReleaseCapsulesPage.tsx +147 -0
  192. package/src/components/docs/guides/GuidesIndexPage.tsx +7 -0
  193. package/src/components/docs/guides/index.ts +1 -0
  194. package/src/components/docs/libraries/LibrariesContractsPage.tsx +72 -27
  195. package/src/components/docs/libraries/LibrariesDesignSystemPage.tsx +67 -61
  196. package/src/components/docs/libraries/LibrariesOverviewPage.tsx +7 -1
  197. package/src/components/docs/libraries/LibrariesUIKitPage.tsx +63 -25
  198. package/src/components/docs/libraries/LibrariesUIKitWebPage.tsx +115 -0
  199. package/src/components/docs/libraries/index.ts +1 -0
  200. package/src/components/docs/specs/SpecsBuilderControlPlanePage.tsx +58 -3
  201. package/src/components/docs/specs/SpecsConnectPage.tsx +30 -0
  202. package/src/components/docs/specs/SpecsDataViewsPage.tsx +63 -42
@@ -1,18 +1,2 @@
1
1
  // @bun
2
- var l={"agent-console":{key:"agent-console",lead:"Primary meetup path for autonomous agents: typed tools, agent configs, run history, and execution logs in one regenerable surface.",sandboxHref:"/sandbox?template=agent-console",referenceHref:"/docs/reference/agent-console/agent-console",llmsHref:"/llms/example.agent-console",repoHref:"https://github.com/lssm-tech/contractspec/tree/main/packages/examples/agent-console",localCommands:`bun run --cwd packages/examples/agent-console build
3
- bun run --cwd packages/examples/agent-console test
4
- bun run --cwd packages/apps/web-landing dev
5
-
6
- # Open in the browser
7
- # http://localhost:3000/sandbox?template=agent-console`},"ai-chat-assistant":{key:"ai-chat-assistant",lead:"Secondary meetup path for MCP-aware assistants: reasoning, sources, suggestions, and a minimal contract-backed search tool.",sandboxHref:"/sandbox?template=ai-chat-assistant",referenceHref:"/docs/reference/ai-chat-assistant/assistant.search",llmsHref:"/llms/example.ai-chat-assistant",repoHref:"https://github.com/lssm-tech/contractspec/tree/main/packages/examples/ai-chat-assistant",localCommands:`bun run --cwd packages/examples/ai-chat-assistant build
8
- bun run --cwd packages/examples/ai-chat-assistant test
9
- bun run --cwd packages/apps/web-landing dev
10
-
11
- # Open in the browser
12
- # http://localhost:3000/sandbox?template=ai-chat-assistant`},"messaging-agent-actions":{key:"messaging-agent-actions",lead:"Live messaging lane for the meetup: inbound Slack, WhatsApp, or Telegram messages route through fixed intents, allowlisted actions, and deterministic confirmations.",sandboxHref:"/sandbox?template=messaging-agent-actions",referenceHref:"/docs/reference/messaging-agent-actions/messaging.agentActions.process",llmsHref:"/llms/example.messaging-agent-actions",repoHref:"https://github.com/lssm-tech/contractspec/tree/main/packages/examples/messaging-agent-actions",localCommands:`bun run --cwd packages/examples/messaging-agent-actions build
13
- bun run --cwd packages/examples/messaging-agent-actions test
14
- bun run --cwd packages/examples/messaging-agent-actions proof
15
- bun run --cwd packages/apps/web-landing dev
16
-
17
- # Open in the browser
18
- # http://localhost:3000/sandbox?template=messaging-agent-actions`}};function o(n){return l[n]}import{ExampleCatalogDataView as c}from"@contractspec/lib.contracts-spec/docs";import{ButtonLink as r,DataViewList as h,StatusChip as m}from"@contractspec/lib.design-system";import{HStack as f,VStack as g}from"@contractspec/lib.ui-kit-web/ui/stack";import{H1 as p,Muted as i}from"@contractspec/lib.ui-kit-web/ui/typography";import{listExamples as b}from"@contractspec/module.examples";import{jsx as a,jsxs as t}from"react/jsx-runtime";function u(n){return`/docs/reference/${n}/${n}`}function w(n){return o(n)?.sandboxHref?`/docs/examples/${n}`:u(n)}function P(){let n=b().map((s)=>{let e=s.meta.title??s.meta.key;return{id:s.meta.key,title:e,summary:s.meta.summary??s.meta.description,route:w(s.meta.key),tags:s.meta.tags,sandboxEnabled:s.surfaces.sandbox.enabled}}).sort((s,e)=>s.title.localeCompare(e.title)),d={...c,view:{...c.view,kind:"list"}};return t(g,{gap:"xl",children:[t(g,{gap:"sm",children:[a(p,{children:"Examples"}),a(i,{children:"Reference implementations for real ContractSpec surfaces. Use them to study adoption patterns, inspect generated artifacts, and validate the OSS workflow against runnable systems."})]}),a(h,{spec:d,items:n,emptyState:a(i,{children:"No examples available."}),renderActions:(s)=>{return t(f,{gap:"xs",justify:"end",children:[s.sandboxEnabled?a(r,{href:`/sandbox?template=${s.id}`,size:"sm",variant:"outline",children:"Sandbox"}):null,a(r,{href:s.route,size:"sm",children:"Reference"}),s.tags?.[0]?a(m,{size:"sm",label:s.tags[0]}):null]})}})]})}export{P as DocsExamplesPage};
2
+ import{ExampleCatalogDataView as F}from"@contractspec/lib.contracts-spec/docs";import{ButtonLink as G,DataViewList as O,StatusChip as Q}from"@contractspec/lib.design-system";import{HStack as R,VStack as I}from"@contractspec/lib.ui-kit-web/ui/stack";import{H1 as T,Muted as J}from"@contractspec/lib.ui-kit-web/ui/typography";import{buildExampleDocsHref as U,listPublicExamples as W}from"@contractspec/module.examples";import{jsx as v,jsxs as A}from"react/jsx-runtime";function f(){let K=W().map((q)=>{let z=q.meta.title??q.meta.key;return{id:q.meta.key,title:z,summary:q.meta.summary??q.meta.description,route:U(q.meta.key),tags:q.meta.tags,sandboxEnabled:q.surfaces.sandbox.enabled}}).sort((q,z)=>q.title.localeCompare(z.title)),N={...F,view:{...F.view,kind:"list"}};return A(I,{gap:"xl",children:[A(I,{gap:"sm",children:[v(T,{children:"Examples"}),v(J,{children:"Reference implementations for real ContractSpec surfaces. Use them to study adoption patterns, inspect generated artifacts, and validate the OSS workflow against runnable systems."})]}),v(O,{spec:N,items:K,emptyState:v(J,{children:"No examples available."}),renderActions:(q)=>{return A(R,{gap:"xs",justify:"end",children:[q.sandboxEnabled?v(G,{href:`/sandbox?template=${q.id}`,size:"sm",variant:"outline",children:"Sandbox"}):null,v(G,{href:q.route,size:"sm",children:"Reference"}),q.tags?.[0]?v(Q,{size:"sm",label:q.tags[0]}):null]})}})]})}export{f as DocsExamplesPage};
@@ -1,5 +1,5 @@
1
1
  interface ExampleShowcasePageProps {
2
- exampleKey: 'agent-console' | 'ai-chat-assistant' | 'messaging-agent-actions';
2
+ exampleKey: string;
3
3
  }
4
4
  export declare function ExampleShowcasePage({ exampleKey }: ExampleShowcasePageProps): import("react/jsx-runtime").JSX.Element | null;
5
5
  export {};
@@ -1,18 +1,3 @@
1
1
  // @bun
2
- var m={"agent-console":{key:"agent-console",lead:"Primary meetup path for autonomous agents: typed tools, agent configs, run history, and execution logs in one regenerable surface.",sandboxHref:"/sandbox?template=agent-console",referenceHref:"/docs/reference/agent-console/agent-console",llmsHref:"/llms/example.agent-console",repoHref:"https://github.com/lssm-tech/contractspec/tree/main/packages/examples/agent-console",localCommands:`bun run --cwd packages/examples/agent-console build
3
- bun run --cwd packages/examples/agent-console test
4
- bun run --cwd packages/apps/web-landing dev
5
-
6
- # Open in the browser
7
- # http://localhost:3000/sandbox?template=agent-console`},"ai-chat-assistant":{key:"ai-chat-assistant",lead:"Secondary meetup path for MCP-aware assistants: reasoning, sources, suggestions, and a minimal contract-backed search tool.",sandboxHref:"/sandbox?template=ai-chat-assistant",referenceHref:"/docs/reference/ai-chat-assistant/assistant.search",llmsHref:"/llms/example.ai-chat-assistant",repoHref:"https://github.com/lssm-tech/contractspec/tree/main/packages/examples/ai-chat-assistant",localCommands:`bun run --cwd packages/examples/ai-chat-assistant build
8
- bun run --cwd packages/examples/ai-chat-assistant test
9
- bun run --cwd packages/apps/web-landing dev
10
-
11
- # Open in the browser
12
- # http://localhost:3000/sandbox?template=ai-chat-assistant`},"messaging-agent-actions":{key:"messaging-agent-actions",lead:"Live messaging lane for the meetup: inbound Slack, WhatsApp, or Telegram messages route through fixed intents, allowlisted actions, and deterministic confirmations.",sandboxHref:"/sandbox?template=messaging-agent-actions",referenceHref:"/docs/reference/messaging-agent-actions/messaging.agentActions.process",llmsHref:"/llms/example.messaging-agent-actions",repoHref:"https://github.com/lssm-tech/contractspec/tree/main/packages/examples/messaging-agent-actions",localCommands:`bun run --cwd packages/examples/messaging-agent-actions build
13
- bun run --cwd packages/examples/messaging-agent-actions test
14
- bun run --cwd packages/examples/messaging-agent-actions proof
15
- bun run --cwd packages/apps/web-landing dev
16
-
17
- # Open in the browser
18
- # http://localhost:3000/sandbox?template=messaging-agent-actions`}};function r(o){return m[o]}import{ButtonLink as n,CodeBlock as p}from"@contractspec/lib.design-system";import d from"@contractspec/lib.ui-link";import{getExample as g}from"@contractspec/module.examples";import{FileCode2 as u,Play as f,TerminalSquare as h}from"lucide-react";import{jsx as e,jsxs as a}from"react/jsx-runtime";function y({exampleKey:o}){let t=r(o),s=g(o);if(!t||!s)return null;let i=s.meta.title??s.meta.key,c=s.meta.summary??s.meta.description??"",l=s.entrypoints.packageName;return a("div",{className:"space-y-10",children:[a("section",{className:"space-y-5",children:[e("p",{className:"editorial-kicker",children:"Meetup-ready example"}),e("h1",{className:"editorial-title max-w-5xl",children:i}),e("p",{className:"editorial-subtitle",children:t.lead}),e("p",{className:"editorial-copy max-w-4xl",children:c}),a("div",{className:"flex flex-wrap gap-3",children:[e(n,{href:t.sandboxHref,children:"Open sandbox"}),e(n,{href:t.referenceHref,variant:"outline",children:"Generated reference"})]})]}),a("section",{className:"grid gap-5 lg:grid-cols-3",children:[a("article",{className:"editorial-panel space-y-4",children:[a("div",{className:"flex items-center gap-3",children:[e("div",{className:"rounded-full border border-border/80 bg-background/85 p-2",children:e(f,{size:18})}),e("h2",{className:"font-semibold text-xl",children:"Sandbox preview"})]}),e("p",{className:"editorial-copy text-sm",children:"Load the same public browser surface used for the prepared live demo."}),e(n,{href:t.sandboxHref,size:"sm",children:"Open preview"})]}),a("article",{className:"editorial-panel space-y-4",children:[a("div",{className:"flex items-center gap-3",children:[e("div",{className:"rounded-full border border-border/80 bg-background/85 p-2",children:e(u,{size:18})}),e("h2",{className:"font-semibold text-xl",children:"Reference docs"})]}),e("p",{className:"editorial-copy text-sm",children:"Inspect the generated contract-facing material instead of relying on marketing summaries."}),e(n,{href:t.referenceHref,size:"sm",variant:"outline",children:"Open reference"})]}),a("article",{className:"editorial-panel space-y-4",children:[a("div",{className:"flex items-center gap-3",children:[e("div",{className:"rounded-full border border-border/80 bg-background/85 p-2",children:e(h,{size:18})}),e("h2",{className:"font-semibold text-xl",children:"Package context"})]}),e("p",{className:"editorial-copy text-sm",children:"Use the agent-facing package page for fast repo orientation, then jump to the source directory."}),e("p",{className:"rounded-[18px] border border-border/70 bg-background/75 px-4 py-3 font-mono text-sm",children:l}),a("div",{className:"flex flex-wrap gap-2",children:[e(n,{href:t.llmsHref,size:"sm",variant:"outline",children:"LLMS page"}),e(n,{href:t.repoHref,size:"sm",variant:"outline",children:"GitHub source"})]})]})]}),a("section",{className:"editorial-panel space-y-5",children:[a("div",{className:"space-y-2",children:[e("p",{className:"editorial-kicker",children:"Talk commands"}),e("h2",{className:"editorial-panel-title",children:"Exact local commands for the meetup lane"}),e("p",{className:"editorial-copy text-sm",children:"Use the package build and test first, then launch the web shell and open the prepared sandbox route."})]}),e(p,{language:"bash",filename:`${o}-meetup-runbook`,code:t.localCommands}),a("p",{className:"text-muted-foreground text-sm",children:["For the full fallback order and safe live-edit workflow, use"," ",e(d,{href:"https://github.com/lssm-tech/contractspec/blob/main/docs/meetup-agent-examples-runbook.md",children:"the meetup runbook"}),"."]})]})]})}export{y as ExampleShowcasePage};
2
+ import{buildExampleDocsHref as m,buildExampleReferenceHref as p,getExamplePreviewHref as d,getPublicExample as g}from"@contractspec/module.examples";var f={"agent-console":"Primary meetup path for autonomous agents: typed tools, agent configs, run history, and execution logs in one regenerable surface.","ai-chat-assistant":"Secondary meetup path for MCP-aware assistants: reasoning, sources, suggestions, and a minimal contract-backed search tool.","data-grid-showcase":"Canonical table example for the full ContractSpec stack: declarative DataView contract, shared controller, raw web primitive, native-first primitive, and the composed design-system wrapper.","messaging-agent-actions":"Live messaging lane for the meetup: inbound Slack, WhatsApp, or Telegram messages route through fixed intents, allowlisted actions, and deterministic confirmations."},u={"agent-console":"/docs/reference/agent-console/agent-console","ai-chat-assistant":"/docs/reference/ai-chat-assistant/assistant.search","data-grid-showcase":"/docs/reference/data-grid-showcase/data-grid-showcase","messaging-agent-actions":"/docs/reference/messaging-agent-actions/messaging.agentActions.process"};function c(r){let a=g(r);if(!a)return;let o=a.entrypoints.packageName.replace("@contractspec/example.",""),n=m(r),i=d(r);return{key:r,lead:f[r]??a.meta.summary??a.meta.description??"Public ContractSpec reference example.",sandboxHref:i,referenceHref:u[r]??p(r),llmsHref:`/llms/${a.entrypoints.packageName.replace("@contractspec/","")}`,repoHref:`https://github.com/lssm-tech/contractspec/tree/main/packages/examples/${o}`,localCommands:h(o,n,i)}}function h(r,a,o){let n=[`bun run --cwd packages/examples/${r} build`,"bun run --cwd packages/apps/web-landing dev","","# Open in the browser",`# http://localhost:3000${a}`];if(o)n.push(`# http://localhost:3000${o}`);return n.join(`
3
+ `)}import{ButtonLink as s,CodeBlock as b}from"@contractspec/lib.design-system";import N from"@contractspec/lib.ui-link";import{getExample as v}from"@contractspec/module.examples";import{FileCode2 as k,Play as w,TerminalSquare as y}from"lucide-react";import{jsx as e,jsxs as t}from"react/jsx-runtime";function R({exampleKey:r}){let a=c(r),o=v(r);if(!a||!o)return null;let n=o.meta.title??o.meta.key,i=o.meta.summary??o.meta.description??"",l=o.entrypoints.packageName;return t("div",{className:"space-y-10",children:[t("section",{className:"space-y-5",children:[e("p",{className:"editorial-kicker",children:"Meetup-ready example"}),e("h1",{className:"editorial-title max-w-5xl",children:n}),e("p",{className:"editorial-subtitle",children:a.lead}),e("p",{className:"editorial-copy max-w-4xl",children:i}),t("div",{className:"flex flex-wrap gap-3",children:[a.sandboxHref?e(s,{href:a.sandboxHref,children:"Open sandbox"}):null,e(s,{href:a.referenceHref,variant:"outline",children:"Generated reference"})]})]}),t("section",{className:"grid gap-5 lg:grid-cols-3",children:[a.sandboxHref?t("article",{className:"editorial-panel space-y-4",children:[t("div",{className:"flex items-center gap-3",children:[e("div",{className:"rounded-full border border-border/80 bg-background/85 p-2",children:e(w,{size:18})}),e("h2",{className:"font-semibold text-xl",children:"Sandbox preview"})]}),e("p",{className:"editorial-copy text-sm",children:"Load the same public browser surface used for the prepared live demo."}),e(s,{href:a.sandboxHref,size:"sm",children:"Open preview"})]}):null,t("article",{className:"editorial-panel space-y-4",children:[t("div",{className:"flex items-center gap-3",children:[e("div",{className:"rounded-full border border-border/80 bg-background/85 p-2",children:e(k,{size:18})}),e("h2",{className:"font-semibold text-xl",children:"Reference docs"})]}),e("p",{className:"editorial-copy text-sm",children:"Inspect the generated contract-facing material instead of relying on marketing summaries."}),e(s,{href:a.referenceHref,size:"sm",variant:"outline",children:"Open reference"})]}),t("article",{className:"editorial-panel space-y-4",children:[t("div",{className:"flex items-center gap-3",children:[e("div",{className:"rounded-full border border-border/80 bg-background/85 p-2",children:e(y,{size:18})}),e("h2",{className:"font-semibold text-xl",children:"Package context"})]}),e("p",{className:"editorial-copy text-sm",children:"Use the agent-facing package page for fast repo orientation, then jump to the source directory."}),e("p",{className:"rounded-[18px] border border-border/70 bg-background/75 px-4 py-3 font-mono text-sm",children:l}),t("div",{className:"flex flex-wrap gap-2",children:[e(s,{href:a.llmsHref,size:"sm",variant:"outline",children:"LLMS page"}),e(s,{href:a.repoHref,size:"sm",variant:"outline",children:"GitHub source"})]})]})]}),t("section",{className:"editorial-panel space-y-5",children:[t("div",{className:"space-y-2",children:[e("p",{className:"editorial-kicker",children:"Talk commands"}),e("h2",{className:"editorial-panel-title",children:"Exact local commands for the meetup lane"}),e("p",{className:"editorial-copy text-sm",children:"Build the example package, then launch the web shell and open the prepared docs or sandbox route."})]}),e(b,{language:"bash",filename:`${r}-meetup-runbook`,code:a.localCommands}),t("p",{className:"text-muted-foreground text-sm",children:["For the full fallback order and safe live-edit workflow, use"," ",e(N,{href:"https://github.com/lssm-tech/contractspec/blob/main/docs/meetup-agent-examples-runbook.md",children:"the meetup runbook"}),"."]})]})]})}export{R as ExampleShowcasePage};
@@ -1,7 +1,7 @@
1
1
  export interface ExampleShowcaseData {
2
- key: 'agent-console' | 'ai-chat-assistant' | 'messaging-agent-actions';
2
+ key: string;
3
3
  lead: string;
4
- sandboxHref: string;
4
+ sandboxHref: string | null;
5
5
  referenceHref: string;
6
6
  llmsHref: string;
7
7
  repoHref: string;
@@ -1,18 +1,3 @@
1
1
  // @bun
2
- var a={"agent-console":{key:"agent-console",lead:"Primary meetup path for autonomous agents: typed tools, agent configs, run history, and execution logs in one regenerable surface.",sandboxHref:"/sandbox?template=agent-console",referenceHref:"/docs/reference/agent-console/agent-console",llmsHref:"/llms/example.agent-console",repoHref:"https://github.com/lssm-tech/contractspec/tree/main/packages/examples/agent-console",localCommands:`bun run --cwd packages/examples/agent-console build
3
- bun run --cwd packages/examples/agent-console test
4
- bun run --cwd packages/apps/web-landing dev
5
-
6
- # Open in the browser
7
- # http://localhost:3000/sandbox?template=agent-console`},"ai-chat-assistant":{key:"ai-chat-assistant",lead:"Secondary meetup path for MCP-aware assistants: reasoning, sources, suggestions, and a minimal contract-backed search tool.",sandboxHref:"/sandbox?template=ai-chat-assistant",referenceHref:"/docs/reference/ai-chat-assistant/assistant.search",llmsHref:"/llms/example.ai-chat-assistant",repoHref:"https://github.com/lssm-tech/contractspec/tree/main/packages/examples/ai-chat-assistant",localCommands:`bun run --cwd packages/examples/ai-chat-assistant build
8
- bun run --cwd packages/examples/ai-chat-assistant test
9
- bun run --cwd packages/apps/web-landing dev
10
-
11
- # Open in the browser
12
- # http://localhost:3000/sandbox?template=ai-chat-assistant`},"messaging-agent-actions":{key:"messaging-agent-actions",lead:"Live messaging lane for the meetup: inbound Slack, WhatsApp, or Telegram messages route through fixed intents, allowlisted actions, and deterministic confirmations.",sandboxHref:"/sandbox?template=messaging-agent-actions",referenceHref:"/docs/reference/messaging-agent-actions/messaging.agentActions.process",llmsHref:"/llms/example.messaging-agent-actions",repoHref:"https://github.com/lssm-tech/contractspec/tree/main/packages/examples/messaging-agent-actions",localCommands:`bun run --cwd packages/examples/messaging-agent-actions build
13
- bun run --cwd packages/examples/messaging-agent-actions test
14
- bun run --cwd packages/examples/messaging-agent-actions proof
15
- bun run --cwd packages/apps/web-landing dev
16
-
17
- # Open in the browser
18
- # http://localhost:3000/sandbox?template=messaging-agent-actions`}};function s(e){return a[e]}export{s as getExampleShowcaseData};
2
+ import{buildExampleDocsHref as r,buildExampleReferenceHref as o,getExamplePreviewHref as c,getPublicExample as i}from"@contractspec/module.examples";var l={"agent-console":"Primary meetup path for autonomous agents: typed tools, agent configs, run history, and execution logs in one regenerable surface.","ai-chat-assistant":"Secondary meetup path for MCP-aware assistants: reasoning, sources, suggestions, and a minimal contract-backed search tool.","data-grid-showcase":"Canonical table example for the full ContractSpec stack: declarative DataView contract, shared controller, raw web primitive, native-first primitive, and the composed design-system wrapper.","messaging-agent-actions":"Live messaging lane for the meetup: inbound Slack, WhatsApp, or Telegram messages route through fixed intents, allowlisted actions, and deterministic confirmations."},g={"agent-console":"/docs/reference/agent-console/agent-console","ai-chat-assistant":"/docs/reference/ai-chat-assistant/assistant.search","data-grid-showcase":"/docs/reference/data-grid-showcase/data-grid-showcase","messaging-agent-actions":"/docs/reference/messaging-agent-actions/messaging.agentActions.process"};function d(e){let a=i(e);if(!a)return;let t=a.entrypoints.packageName.replace("@contractspec/example.",""),s=r(e),n=c(e);return{key:e,lead:l[e]??a.meta.summary??a.meta.description??"Public ContractSpec reference example.",sandboxHref:n,referenceHref:g[e]??o(e),llmsHref:`/llms/${a.entrypoints.packageName.replace("@contractspec/","")}`,repoHref:`https://github.com/lssm-tech/contractspec/tree/main/packages/examples/${t}`,localCommands:p(t,s,n)}}function p(e,a,t){let s=[`bun run --cwd packages/examples/${e} build`,"bun run --cwd packages/apps/web-landing dev","","# Open in the browser",`# http://localhost:3000${a}`];if(t)s.push(`# http://localhost:3000${t}`);return s.join(`
3
+ `)}export{d as getExampleShowcaseData};
@@ -1,18 +1,3 @@
1
1
  // @bun
2
- var h={"agent-console":{key:"agent-console",lead:"Primary meetup path for autonomous agents: typed tools, agent configs, run history, and execution logs in one regenerable surface.",sandboxHref:"/sandbox?template=agent-console",referenceHref:"/docs/reference/agent-console/agent-console",llmsHref:"/llms/example.agent-console",repoHref:"https://github.com/lssm-tech/contractspec/tree/main/packages/examples/agent-console",localCommands:`bun run --cwd packages/examples/agent-console build
3
- bun run --cwd packages/examples/agent-console test
4
- bun run --cwd packages/apps/web-landing dev
5
-
6
- # Open in the browser
7
- # http://localhost:3000/sandbox?template=agent-console`},"ai-chat-assistant":{key:"ai-chat-assistant",lead:"Secondary meetup path for MCP-aware assistants: reasoning, sources, suggestions, and a minimal contract-backed search tool.",sandboxHref:"/sandbox?template=ai-chat-assistant",referenceHref:"/docs/reference/ai-chat-assistant/assistant.search",llmsHref:"/llms/example.ai-chat-assistant",repoHref:"https://github.com/lssm-tech/contractspec/tree/main/packages/examples/ai-chat-assistant",localCommands:`bun run --cwd packages/examples/ai-chat-assistant build
8
- bun run --cwd packages/examples/ai-chat-assistant test
9
- bun run --cwd packages/apps/web-landing dev
10
-
11
- # Open in the browser
12
- # http://localhost:3000/sandbox?template=ai-chat-assistant`},"messaging-agent-actions":{key:"messaging-agent-actions",lead:"Live messaging lane for the meetup: inbound Slack, WhatsApp, or Telegram messages route through fixed intents, allowlisted actions, and deterministic confirmations.",sandboxHref:"/sandbox?template=messaging-agent-actions",referenceHref:"/docs/reference/messaging-agent-actions/messaging.agentActions.process",llmsHref:"/llms/example.messaging-agent-actions",repoHref:"https://github.com/lssm-tech/contractspec/tree/main/packages/examples/messaging-agent-actions",localCommands:`bun run --cwd packages/examples/messaging-agent-actions build
13
- bun run --cwd packages/examples/messaging-agent-actions test
14
- bun run --cwd packages/examples/messaging-agent-actions proof
15
- bun run --cwd packages/apps/web-landing dev
16
-
17
- # Open in the browser
18
- # http://localhost:3000/sandbox?template=messaging-agent-actions`}};function i(t){return h[t]}import{ExampleCatalogDataView as d}from"@contractspec/lib.contracts-spec/docs";import{ButtonLink as m,DataViewList as b,StatusChip as k}from"@contractspec/lib.design-system";import{HStack as N,VStack as p}from"@contractspec/lib.ui-kit-web/ui/stack";import{H1 as v,Muted as g}from"@contractspec/lib.ui-kit-web/ui/typography";import{listExamples as w}from"@contractspec/module.examples";import{jsx as o,jsxs as l}from"react/jsx-runtime";function H(t){return`/docs/reference/${t}/${t}`}function y(t){return i(t)?.sandboxHref?`/docs/examples/${t}`:H(t)}function P(){let t=w().map((a)=>{let c=a.meta.title??a.meta.key;return{id:a.meta.key,title:c,summary:a.meta.summary??a.meta.description,route:y(a.meta.key),tags:a.meta.tags,sandboxEnabled:a.surfaces.sandbox.enabled}}).sort((a,c)=>a.title.localeCompare(c.title)),s={...d,view:{...d.view,kind:"list"}};return l(p,{gap:"xl",children:[l(p,{gap:"sm",children:[o(v,{children:"Examples"}),o(g,{children:"Reference implementations for real ContractSpec surfaces. Use them to study adoption patterns, inspect generated artifacts, and validate the OSS workflow against runnable systems."})]}),o(b,{spec:s,items:t,emptyState:o(g,{children:"No examples available."}),renderActions:(a)=>{return l(N,{gap:"xs",justify:"end",children:[a.sandboxEnabled?o(m,{href:`/sandbox?template=${a.id}`,size:"sm",variant:"outline",children:"Sandbox"}):null,o(m,{href:a.route,size:"sm",children:"Reference"}),a.tags?.[0]?o(k,{size:"sm",label:a.tags[0]}):null]})}})]})}import{ButtonLink as r,CodeBlock as E}from"@contractspec/lib.design-system";import L from"@contractspec/lib.ui-link";import{getExample as S}from"@contractspec/module.examples";import{FileCode2 as z,Play as O,TerminalSquare as B}from"lucide-react";import{jsx as e,jsxs as n}from"react/jsx-runtime";function C({exampleKey:t}){let s=i(t),a=S(t);if(!s||!a)return null;let c=a.meta.title??a.meta.key,f=a.meta.summary??a.meta.description??"",u=a.entrypoints.packageName;return n("div",{className:"space-y-10",children:[n("section",{className:"space-y-5",children:[e("p",{className:"editorial-kicker",children:"Meetup-ready example"}),e("h1",{className:"editorial-title max-w-5xl",children:c}),e("p",{className:"editorial-subtitle",children:s.lead}),e("p",{className:"editorial-copy max-w-4xl",children:f}),n("div",{className:"flex flex-wrap gap-3",children:[e(r,{href:s.sandboxHref,children:"Open sandbox"}),e(r,{href:s.referenceHref,variant:"outline",children:"Generated reference"})]})]}),n("section",{className:"grid gap-5 lg:grid-cols-3",children:[n("article",{className:"editorial-panel space-y-4",children:[n("div",{className:"flex items-center gap-3",children:[e("div",{className:"rounded-full border border-border/80 bg-background/85 p-2",children:e(O,{size:18})}),e("h2",{className:"font-semibold text-xl",children:"Sandbox preview"})]}),e("p",{className:"editorial-copy text-sm",children:"Load the same public browser surface used for the prepared live demo."}),e(r,{href:s.sandboxHref,size:"sm",children:"Open preview"})]}),n("article",{className:"editorial-panel space-y-4",children:[n("div",{className:"flex items-center gap-3",children:[e("div",{className:"rounded-full border border-border/80 bg-background/85 p-2",children:e(z,{size:18})}),e("h2",{className:"font-semibold text-xl",children:"Reference docs"})]}),e("p",{className:"editorial-copy text-sm",children:"Inspect the generated contract-facing material instead of relying on marketing summaries."}),e(r,{href:s.referenceHref,size:"sm",variant:"outline",children:"Open reference"})]}),n("article",{className:"editorial-panel space-y-4",children:[n("div",{className:"flex items-center gap-3",children:[e("div",{className:"rounded-full border border-border/80 bg-background/85 p-2",children:e(B,{size:18})}),e("h2",{className:"font-semibold text-xl",children:"Package context"})]}),e("p",{className:"editorial-copy text-sm",children:"Use the agent-facing package page for fast repo orientation, then jump to the source directory."}),e("p",{className:"rounded-[18px] border border-border/70 bg-background/75 px-4 py-3 font-mono text-sm",children:u}),n("div",{className:"flex flex-wrap gap-2",children:[e(r,{href:s.llmsHref,size:"sm",variant:"outline",children:"LLMS page"}),e(r,{href:s.repoHref,size:"sm",variant:"outline",children:"GitHub source"})]})]})]}),n("section",{className:"editorial-panel space-y-5",children:[n("div",{className:"space-y-2",children:[e("p",{className:"editorial-kicker",children:"Talk commands"}),e("h2",{className:"editorial-panel-title",children:"Exact local commands for the meetup lane"}),e("p",{className:"editorial-copy text-sm",children:"Use the package build and test first, then launch the web shell and open the prepared sandbox route."})]}),e(E,{language:"bash",filename:`${t}-meetup-runbook`,code:s.localCommands}),n("p",{className:"text-muted-foreground text-sm",children:["For the full fallback order and safe live-edit workflow, use"," ",e(L,{href:"https://github.com/lssm-tech/contractspec/blob/main/docs/meetup-agent-examples-runbook.md",children:"the meetup runbook"}),"."]})]})]})}export{C as ExampleShowcasePage,P as DocsExamplesPage};
2
+ import{ExampleCatalogDataView as d}from"@contractspec/lib.contracts-spec/docs";import{ButtonLink as m,DataViewList as h,StatusChip as b}from"@contractspec/lib.design-system";import{HStack as N,VStack as p}from"@contractspec/lib.ui-kit-web/ui/stack";import{H1 as v,Muted as g}from"@contractspec/lib.ui-kit-web/ui/typography";import{buildExampleDocsHref as w,listPublicExamples as k}from"@contractspec/module.examples";import{jsx as i,jsxs as l}from"react/jsx-runtime";function y(){let r=k().map((e)=>{let n=e.meta.title??e.meta.key;return{id:e.meta.key,title:n,summary:e.meta.summary??e.meta.description,route:w(e.meta.key),tags:e.meta.tags,sandboxEnabled:e.surfaces.sandbox.enabled}}).sort((e,n)=>e.title.localeCompare(n.title)),t={...d,view:{...d.view,kind:"list"}};return l(p,{gap:"xl",children:[l(p,{gap:"sm",children:[i(v,{children:"Examples"}),i(g,{children:"Reference implementations for real ContractSpec surfaces. Use them to study adoption patterns, inspect generated artifacts, and validate the OSS workflow against runnable systems."})]}),i(h,{spec:t,items:r,emptyState:i(g,{children:"No examples available."}),renderActions:(e)=>{return l(N,{gap:"xs",justify:"end",children:[e.sandboxEnabled?i(m,{href:`/sandbox?template=${e.id}`,size:"sm",variant:"outline",children:"Sandbox"}):null,i(m,{href:e.route,size:"sm",children:"Reference"}),e.tags?.[0]?i(b,{size:"sm",label:e.tags[0]}):null]})}})]})}import{buildExampleDocsHref as E,buildExampleReferenceHref as H,getExamplePreviewHref as P,getPublicExample as L}from"@contractspec/module.examples";var S={"agent-console":"Primary meetup path for autonomous agents: typed tools, agent configs, run history, and execution logs in one regenerable surface.","ai-chat-assistant":"Secondary meetup path for MCP-aware assistants: reasoning, sources, suggestions, and a minimal contract-backed search tool.","data-grid-showcase":"Canonical table example for the full ContractSpec stack: declarative DataView contract, shared controller, raw web primitive, native-first primitive, and the composed design-system wrapper.","messaging-agent-actions":"Live messaging lane for the meetup: inbound Slack, WhatsApp, or Telegram messages route through fixed intents, allowlisted actions, and deterministic confirmations."},R={"agent-console":"/docs/reference/agent-console/agent-console","ai-chat-assistant":"/docs/reference/ai-chat-assistant/assistant.search","data-grid-showcase":"/docs/reference/data-grid-showcase/data-grid-showcase","messaging-agent-actions":"/docs/reference/messaging-agent-actions/messaging.agentActions.process"};function f(r){let t=L(r);if(!t)return;let e=t.entrypoints.packageName.replace("@contractspec/example.",""),n=E(r),c=P(r);return{key:r,lead:S[r]??t.meta.summary??t.meta.description??"Public ContractSpec reference example.",sandboxHref:c,referenceHref:R[r]??H(r),llmsHref:`/llms/${t.entrypoints.packageName.replace("@contractspec/","")}`,repoHref:`https://github.com/lssm-tech/contractspec/tree/main/packages/examples/${e}`,localCommands:C(e,n,c)}}function C(r,t,e){let n=[`bun run --cwd packages/examples/${r} build`,"bun run --cwd packages/apps/web-landing dev","","# Open in the browser",`# http://localhost:3000${t}`];if(e)n.push(`# http://localhost:3000${e}`);return n.join(`
3
+ `)}import{ButtonLink as s,CodeBlock as z}from"@contractspec/lib.design-system";import B from"@contractspec/lib.ui-link";import{getExample as D}from"@contractspec/module.examples";import{FileCode2 as O,Play as $,TerminalSquare as F}from"lucide-react";import{jsx as a,jsxs as o}from"react/jsx-runtime";function A({exampleKey:r}){let t=f(r),e=D(r);if(!t||!e)return null;let n=e.meta.title??e.meta.key,c=e.meta.summary??e.meta.description??"",u=e.entrypoints.packageName;return o("div",{className:"space-y-10",children:[o("section",{className:"space-y-5",children:[a("p",{className:"editorial-kicker",children:"Meetup-ready example"}),a("h1",{className:"editorial-title max-w-5xl",children:n}),a("p",{className:"editorial-subtitle",children:t.lead}),a("p",{className:"editorial-copy max-w-4xl",children:c}),o("div",{className:"flex flex-wrap gap-3",children:[t.sandboxHref?a(s,{href:t.sandboxHref,children:"Open sandbox"}):null,a(s,{href:t.referenceHref,variant:"outline",children:"Generated reference"})]})]}),o("section",{className:"grid gap-5 lg:grid-cols-3",children:[t.sandboxHref?o("article",{className:"editorial-panel space-y-4",children:[o("div",{className:"flex items-center gap-3",children:[a("div",{className:"rounded-full border border-border/80 bg-background/85 p-2",children:a($,{size:18})}),a("h2",{className:"font-semibold text-xl",children:"Sandbox preview"})]}),a("p",{className:"editorial-copy text-sm",children:"Load the same public browser surface used for the prepared live demo."}),a(s,{href:t.sandboxHref,size:"sm",children:"Open preview"})]}):null,o("article",{className:"editorial-panel space-y-4",children:[o("div",{className:"flex items-center gap-3",children:[a("div",{className:"rounded-full border border-border/80 bg-background/85 p-2",children:a(O,{size:18})}),a("h2",{className:"font-semibold text-xl",children:"Reference docs"})]}),a("p",{className:"editorial-copy text-sm",children:"Inspect the generated contract-facing material instead of relying on marketing summaries."}),a(s,{href:t.referenceHref,size:"sm",variant:"outline",children:"Open reference"})]}),o("article",{className:"editorial-panel space-y-4",children:[o("div",{className:"flex items-center gap-3",children:[a("div",{className:"rounded-full border border-border/80 bg-background/85 p-2",children:a(F,{size:18})}),a("h2",{className:"font-semibold text-xl",children:"Package context"})]}),a("p",{className:"editorial-copy text-sm",children:"Use the agent-facing package page for fast repo orientation, then jump to the source directory."}),a("p",{className:"rounded-[18px] border border-border/70 bg-background/75 px-4 py-3 font-mono text-sm",children:u}),o("div",{className:"flex flex-wrap gap-2",children:[a(s,{href:t.llmsHref,size:"sm",variant:"outline",children:"LLMS page"}),a(s,{href:t.repoHref,size:"sm",variant:"outline",children:"GitHub source"})]})]})]}),o("section",{className:"editorial-panel space-y-5",children:[o("div",{className:"space-y-2",children:[a("p",{className:"editorial-kicker",children:"Talk commands"}),a("h2",{className:"editorial-panel-title",children:"Exact local commands for the meetup lane"}),a("p",{className:"editorial-copy text-sm",children:"Build the example package, then launch the web shell and open the prepared docs or sandbox route."})]}),a(z,{language:"bash",filename:`${r}-meetup-runbook`,code:t.localCommands}),o("p",{className:"text-muted-foreground text-sm",children:["For the full fallback order and safe live-edit workflow, use"," ",a(B,{href:"https://github.com/lssm-tech/contractspec/blob/main/docs/meetup-agent-examples-runbook.md",children:"the meetup runbook"}),"."]})]})]})}export{A as ExampleShowcasePage,y as DocsExamplesPage};
@@ -1,15 +1,16 @@
1
1
  // @bun
2
- import{CodeBlock as c,InstallCommand as i}from"@contractspec/lib.design-system";import o from"@contractspec/lib.ui-link";import{ChevronRight as n}from"lucide-react";import{jsx as e,jsxs as a}from"react/jsx-runtime";function p(){return a("div",{className:"space-y-8",children:[a("div",{className:"space-y-2",children:[e("h1",{className:"font-bold text-4xl",children:"ContractSpec CLI"}),e("p",{className:"text-lg text-muted-foreground",children:"Command-line interface for creating, building, and validating contract specifications with AI-powered code generation."})]}),a("div",{className:"space-y-6",children:[a("div",{className:"space-y-3",children:[e("h2",{className:"font-bold text-2xl",children:"Installation"}),e(i,{package:"contractspec",dev:!0})]}),a("div",{className:"space-y-3",children:[e("h2",{className:"font-bold text-2xl",children:"Quick Start"}),e(c,{language:"bash",code:`# Initialize project
2
+ import{CodeBlock as c,InstallCommand as n}from"@contractspec/lib.design-system";import o from"@contractspec/lib.ui-link";import{ChevronRight as i}from"lucide-react";import{jsx as e,jsxs as a}from"react/jsx-runtime";function p(){return a("div",{className:"space-y-8",children:[a("div",{className:"space-y-2",children:[e("h1",{className:"font-bold text-4xl",children:"ContractSpec CLI"}),e("p",{className:"text-lg text-muted-foreground",children:"Command-line interface for creating, building, and validating contract specifications with AI-powered code generation."})]}),a("div",{className:"space-y-6",children:[a("div",{className:"space-y-3",children:[e("h2",{className:"font-bold text-2xl",children:"Installation"}),e(n,{package:"contractspec",dev:!0})]}),a("div",{className:"space-y-3",children:[e("h2",{className:"font-bold text-2xl",children:"Quick Start"}),e(c,{language:"bash",code:`# Initialize project
3
+ contractspec onboard
3
4
  bunx contractspec init
4
5
 
5
6
  # Create a spec
6
7
  contractspec create --type operation
7
8
 
8
9
  # Generate code
9
- contractspec build src/contracts/mySpec.ts
10
+ contractspec generate
10
11
 
11
12
  # Validate
12
- contractspec validate src/contracts/mySpec.ts`})]}),a("div",{className:"space-y-4",children:[e("h2",{className:"font-bold text-2xl",children:"Commands"}),e("div",{className:"grid gap-4",children:[{name:"create",description:"Interactive wizard to create contract specifications",usage:"contractspec create [--type operation] [--ai]"},{name:"build",description:"Generate implementation code from contract specs using AI agents",usage:"contractspec build <spec-file> [--agent-mode claude-code]"},{name:"validate",description:"Validate contract specifications and implementations",usage:"contractspec validate <spec-file> [--check-implementation]"},{name:"list",description:"List all contract specifications in the project",usage:"contractspec list [--type operation] [--json]"},{name:"watch",description:"Watch specs and auto-regenerate on changes",usage:"contractspec watch [--build] [--validate]"},{name:"sync",description:"Sync contracts by building all discovered specs",usage:"contractspec sync [--dry-run]"},{name:"ci",description:"Run all validation checks for CI/CD pipelines",usage:"contractspec ci [--format sarif] [--output results.sarif]"},{name:"deps",description:"Analyze contract dependencies and relationships",usage:"contractspec deps [--circular] [--format dot]"},{name:"diff",description:"Compare contract specifications and show differences",usage:"contractspec diff <spec1> <spec2> [--breaking]"}].map((t)=>a("div",{className:"card-subtle space-y-2 p-4",children:[e("h3",{className:"font-bold font-mono text-violet-400",children:t.name}),e("p",{className:"text-muted-foreground text-sm",children:t.description}),e(c,{language:"bash",code:t.usage,showCopyButton:!1})]},t.name))})]}),a("div",{className:"space-y-3",children:[e("h2",{className:"font-bold text-2xl",children:"AI Agent Modes"}),e("p",{className:"text-muted-foreground",children:"The CLI supports multiple AI agent modes for different use cases:"}),a("div",{className:"grid gap-3 md:grid-cols-2",children:[a("div",{className:"card-subtle p-4",children:[e("h4",{className:"font-bold",children:"simple"}),e("p",{className:"text-muted-foreground text-sm",children:"Direct LLM API calls, fast and straightforward. Best for rapid prototyping."})]}),a("div",{className:"card-subtle p-4",children:[e("h4",{className:"font-bold",children:"claude-code"}),e("p",{className:"text-muted-foreground text-sm",children:"Extended thinking with Claude. Best for production-quality code."})]}),a("div",{className:"card-subtle p-4",children:[e("h4",{className:"font-bold",children:"openai-codex"}),e("p",{className:"text-muted-foreground text-sm",children:"GPT-4o/o1 models. Excellent for algorithms and optimization."})]}),a("div",{className:"card-subtle p-4",children:[e("h4",{className:"font-bold",children:"cursor"}),e("p",{className:"text-muted-foreground text-sm",children:"Leverages Cursor agentic capabilities. Requires Cursor environment."})]})]})]}),a("div",{className:"space-y-3",children:[e("h2",{className:"font-bold text-2xl",children:"CI/CD Integration"}),e("p",{className:"text-muted-foreground",children:"Run all validation checks in CI/CD with machine-readable output:"}),e(c,{language:"yaml",filename:".github/workflows/validate.yml",code:`- name: Validate Contracts
13
+ contractspec validate`})]}),a("div",{className:"space-y-4",children:[e("h2",{className:"font-bold text-2xl",children:"Commands"}),e("div",{className:"grid gap-4",children:[{name:"onboard",description:"Primary OSS onboarding flow that recommends tracks, examples, and repo-local guides",usage:"contractspec onboard [track...] [--example <key>] [--dry-run] [--json]"},{name:"create",description:"Interactive wizard to create contract specifications",usage:"contractspec create [--type operation] [--ai]"},{name:"build",description:"Generate implementation code from contract specs using AI agents",usage:"contractspec build <spec-file> [--agent-mode claude-code]"},{name:"validate",description:"Validate contract specifications and implementations",usage:"contractspec validate <spec-file> [--check-implementation]"},{name:"list",description:"List all contract specifications in the project",usage:"contractspec list [--type operation] [--json]"},{name:"watch",description:"Watch specs and auto-regenerate on changes",usage:"contractspec watch [--build] [--validate]"},{name:"sync",description:"Sync contracts by building all discovered specs",usage:"contractspec sync [--dry-run]"},{name:"ci",description:"Run all validation checks for CI/CD pipelines",usage:"contractspec ci [--format sarif] [--output results.sarif]"},{name:"deps",description:"Analyze contract dependencies and relationships",usage:"contractspec deps [--circular] [--format dot]"},{name:"diff",description:"Compare contract specifications and show differences",usage:"contractspec diff <spec1> <spec2> [--breaking]"}].map((t)=>a("div",{className:"card-subtle space-y-2 p-4",children:[e("h3",{className:"font-bold font-mono text-violet-400",children:t.name}),e("p",{className:"text-muted-foreground text-sm",children:t.description}),e(c,{language:"bash",code:t.usage,showCopyButton:!1})]},t.name))})]}),a("div",{className:"space-y-3",children:[e("h2",{className:"font-bold text-2xl",children:"AI Agent Modes"}),e("p",{className:"text-muted-foreground",children:"The CLI supports multiple AI agent modes for different use cases:"}),a("div",{className:"grid gap-3 md:grid-cols-2",children:[a("div",{className:"card-subtle p-4",children:[e("h4",{className:"font-bold",children:"simple"}),e("p",{className:"text-muted-foreground text-sm",children:"Direct LLM API calls, fast and straightforward. Best for rapid prototyping."})]}),a("div",{className:"card-subtle p-4",children:[e("h4",{className:"font-bold",children:"claude-code"}),e("p",{className:"text-muted-foreground text-sm",children:"Extended thinking with Claude. Best for production-quality code."})]}),a("div",{className:"card-subtle p-4",children:[e("h4",{className:"font-bold",children:"openai-codex"}),e("p",{className:"text-muted-foreground text-sm",children:"GPT-4o/o1 models. Excellent for algorithms and optimization."})]}),a("div",{className:"card-subtle p-4",children:[e("h4",{className:"font-bold",children:"cursor"}),e("p",{className:"text-muted-foreground text-sm",children:"Leverages Cursor agentic capabilities. Requires Cursor environment."})]})]})]}),a("div",{className:"space-y-3",children:[e("h2",{className:"font-bold text-2xl",children:"CI/CD Integration"}),e("p",{className:"text-muted-foreground",children:"Run all validation checks in CI/CD with machine-readable output:"}),e(c,{language:"yaml",filename:".github/workflows/validate.yml",code:`- name: Validate Contracts
13
14
  run: contractspec ci --format sarif --output results.sarif
14
15
 
15
16
  - name: Upload SARIF
@@ -23,4 +24,4 @@ contractspec validate src/contracts/mySpec.ts`})]}),a("div",{className:"space-y-
23
24
  "operations": "interactions/commands|queries",
24
25
  "events": "events"
25
26
  }
26
- }`})]})]}),a("div",{className:"flex items-center gap-4 pt-4",children:[a(o,{href:"/docs/getting-started/tools/vscode",className:"btn-primary",children:["Next: VS Code Extension ",e(n,{size:16})]}),e(o,{href:"/docs/getting-started/tools",className:"btn-ghost",children:"Back to Tools"})]})]})}export{p as CLIPage};
27
+ }`})]})]}),a("div",{className:"flex items-center gap-4 pt-4",children:[a(o,{href:"/docs/getting-started/tools/vscode",className:"btn-primary",children:["Next: VS Code Extension ",e(i,{size:16})]}),e(o,{href:"/docs/getting-started/tools",className:"btn-ghost",children:"Back to Tools"})]})]})}export{p as CLIPage};
@@ -1,18 +1,5 @@
1
1
  // @bun
2
- import{CodeBlock as a}from"@contractspec/lib.design-system";import i from"@contractspec/lib.ui-link";import{ChevronRight as s}from"lucide-react";import{jsx as e,jsxs as t}from"react/jsx-runtime";function l(){return t("div",{className:"space-y-8",children:[t("div",{className:"space-y-4",children:[e("h1",{className:"font-bold text-4xl",children:"Display Data with DataViews"}),e("p",{className:"text-lg text-muted-foreground",children:"Define a filterable, sortable transaction history view that works across web and mobile without duplicating UI code."})]}),t("div",{className:"space-y-4",children:[e("h2",{className:"font-bold text-2xl",children:"1. Define the underlying query"}),e("p",{className:"text-muted-foreground",children:"First, create a query operation to fetch the data:"}),e(a,{language:"typescript",filename:"lib/specs/billing/list-transactions.ts",code:`import { defineQuery } from '@contractspec/lib.contracts-spec';
3
-
4
- export const ListTransactions = defineQuery({
5
- meta: {
6
- key: 'billing.listTransactions',
7
- version: '1.0.0',
8
- description: 'Fetch customer transaction history',
9
- },
10
- io: {
11
- input: /* pagination + filters */,
12
- output: /* array of transactions */,
13
- },
14
- policy: { auth: 'user' },
15
- });`})]}),t("div",{className:"space-y-4",children:[e("h2",{className:"font-bold text-2xl",children:"2. Define the DataView spec"}),e("p",{className:"text-muted-foreground",children:"Wrap your query with presentation metadata:"}),e(a,{language:"typescript",filename:"lib/specs/billing/transaction-history.data-view.ts",code:`import { defineDataView } from '@contractspec/lib.contracts-spec';
2
+ import{CodeBlock as a}from"@contractspec/lib.design-system";import i from"@contractspec/lib.ui-link";import{ChevronRight as n}from"lucide-react";import{jsx as e,jsxs as t}from"react/jsx-runtime";var s=`import { defineDataView } from '@contractspec/lib.contracts-spec/data-views';
16
3
  import { ListTransactions } from './list-transactions';
17
4
 
18
5
  export const TransactionHistory = defineDataView({
@@ -20,68 +7,58 @@ export const TransactionHistory = defineDataView({
20
7
  key: 'billing.transactionHistory',
21
8
  version: '1.0.0',
22
9
  entity: 'transaction',
10
+ title: 'Transaction History',
23
11
  description: 'Customer payment history',
24
- goal: 'Help customers track spending',
25
- context: 'Account dashboard',
12
+ domain: 'billing',
26
13
  owners: ['team-billing'],
27
- stability: 'stable',
28
14
  tags: ['payments'],
15
+ stability: 'stable',
29
16
  },
30
17
  source: {
31
- primary: ListTransactions,
18
+ primary: {
19
+ key: ListTransactions.meta.key,
20
+ version: ListTransactions.meta.version,
21
+ },
32
22
  },
33
23
  view: {
34
- kind: 'list',
35
- fields: [
36
- {
37
- key: 'date',
38
- label: 'Date',
39
- dataPath: 'createdAt',
40
- format: 'date',
41
- sortable: true
42
- },
43
- {
44
- key: 'description',
45
- label: 'Description',
46
- dataPath: 'description'
47
- },
48
- {
49
- key: 'amount',
50
- label: 'Amount',
51
- dataPath: 'amount',
52
- format: 'currency',
53
- sortable: true
54
- },
55
- {
56
- key: 'status',
57
- label: 'Status',
58
- dataPath: 'status',
59
- format: 'badge'
60
- },
61
- ],
62
- filters: [
63
- {
64
- key: 'status',
65
- label: 'Status',
66
- field: 'status',
67
- type: 'enum',
68
- options: [
69
- { value: 'succeeded', label: 'Paid' },
70
- { value: 'pending', label: 'Pending' },
71
- { value: 'failed', label: 'Failed' },
72
- ],
73
- },
74
- {
75
- key: 'dateRange',
76
- label: 'Date Range',
77
- field: 'createdAt',
78
- type: 'dateRange',
24
+ kind: 'table',
25
+ executionMode: 'client',
26
+ selection: 'multiple',
27
+ columnVisibility: true,
28
+ columnResizing: true,
29
+ columnPinning: true,
30
+ rowExpansion: {
31
+ fields: ['notes', 'renewalDate', 'lastActivityAt'],
32
+ },
33
+ initialState: {
34
+ pageSize: 4,
35
+ hiddenColumns: ['notes'],
36
+ pinnedColumns: {
37
+ left: ['account'],
79
38
  },
39
+ sorting: [{ field: 'arr', desc: true }],
40
+ },
41
+ fields: [
42
+ { key: 'account', label: 'Account', dataPath: 'account', sortable: true },
43
+ { key: 'owner', label: 'Owner', dataPath: 'owner', sortable: true },
44
+ { key: 'status', label: 'Status', dataPath: 'status', sortable: true },
45
+ { key: 'notes', label: 'Notes', dataPath: 'notes' },
80
46
  ],
81
- defaultSort: { field: 'date', direction: 'desc' },
82
- pagination: { pageSize: 25 },
83
47
  },
84
- });`})]}),t("div",{className:"space-y-4",children:[e("h2",{className:"font-bold text-2xl",children:"3. Render on the frontend"}),e("p",{className:"text-muted-foreground",children:"Use the runtime renderer in your React or React Native app:"}),e(a,{language:"tsx",filename:"app/dashboard/transactions/page.tsx",code:`'use client';
48
+ });`;function c(){return t("div",{className:"space-y-8",children:[t("div",{className:"space-y-4",children:[e("h1",{className:"font-bold text-4xl",children:"Display Data with DataViews"}),e("p",{className:"text-lg text-muted-foreground",children:"Define a filterable, sortable transaction history view that works across web and mobile without duplicating UI code."})]}),t("div",{className:"space-y-4",children:[e("h2",{className:"font-bold text-2xl",children:"1. Define the underlying query"}),e("p",{className:"text-muted-foreground",children:"First, create a query operation to fetch the data:"}),e(a,{language:"typescript",filename:"lib/specs/billing/list-transactions.ts",code:`import { defineQuery } from '@contractspec/lib.contracts-spec';
49
+
50
+ export const ListTransactions = defineQuery({
51
+ meta: {
52
+ key: 'billing.listTransactions',
53
+ version: '1.0.0',
54
+ description: 'Fetch customer transaction history',
55
+ },
56
+ io: {
57
+ input: /* pagination + filters */,
58
+ output: /* array of transactions */,
59
+ },
60
+ policy: { auth: 'user' },
61
+ });`})]}),t("div",{className:"space-y-4",children:[e("h2",{className:"font-bold text-2xl",children:"2. Define the DataView spec"}),e("p",{className:"text-muted-foreground",children:"Wrap your query with presentation metadata:"}),e(a,{language:"typescript",filename:"lib/specs/billing/transaction-history.data-view.ts",code:s}),t("p",{className:"text-muted-foreground text-sm",children:["The live version of this pattern is available in the canonical"," ",e(i,{href:"/docs/examples/data-grid-showcase",className:"text-[color:var(--rust)] underline underline-offset-4",children:"Data Grid Showcase"}),"."]})]}),t("div",{className:"space-y-4",children:[e("h2",{className:"font-bold text-2xl",children:"3. Render on the frontend"}),e("p",{className:"text-muted-foreground",children:"Use the runtime renderer in your React or React Native app:"}),e(a,{language:"tsx",filename:"app/dashboard/transactions/page.tsx",code:`'use client';
85
62
 
86
63
  import { DataViewRenderer } from '@contractspec/lib.design-system';
87
64
  import { TransactionHistory } from '@/lib/specs/billing/transaction-history.data-view';
@@ -106,4 +83,4 @@ export function TransactionsPage() {
106
83
  />
107
84
  </div>
108
85
  );
109
- }`})]}),t("div",{className:"card-subtle space-y-4 p-6",children:[e("h3",{className:"font-bold",children:"Why DataViews?"}),t("ul",{className:"space-y-2 text-muted-foreground text-sm",children:[e("li",{children:"Same spec renders on web (React) and mobile (React Native)"}),e("li",{children:"Filters, sorting, and pagination handled automatically"}),e("li",{children:"Format rules (currency, dates, badges) applied consistently"}),e("li",{children:"Export to CSV/PDF using the same spec"}),e("li",{children:"A/B test different layouts without touching the backend"})]})]}),t("div",{className:"flex items-center gap-4 pt-4",children:[t(i,{href:"/docs/libraries/data-views",className:"btn-primary",children:["DataView API Reference ",e(s,{size:16})]}),e(i,{href:"/docs/specs/workflows",className:"btn-ghost",children:"Next: Workflows"})]})]})}export{l as DataViewTutorialPage};
86
+ }`})]}),t("div",{className:"card-subtle space-y-4 p-6",children:[e("h3",{className:"font-bold",children:"Why DataViews?"}),t("ul",{className:"space-y-2 text-muted-foreground text-sm",children:[e("li",{children:"Same spec renders on web (React) and mobile (React Native)"}),e("li",{children:"Filters, sorting, and pagination handled automatically"}),e("li",{children:"Column visibility, pinning, resizing, and row expansion stay contract-driven"}),e("li",{children:"Format rules (currency, dates, badges) applied consistently"}),e("li",{children:"Export to CSV/PDF using the same spec"}),e("li",{children:"A/B test different layouts without touching the backend"})]})]}),t("div",{className:"flex items-center gap-4 pt-4",children:[t(i,{href:"/docs/libraries/data-views",className:"btn-primary",children:["DataView API Reference ",e(n,{size:16})]}),e(i,{href:"/docs/specs/workflows",className:"btn-ghost",children:"Next: Workflows"})]})]})}export{c as DataViewTutorialPage};
@@ -1,3 +1,5 @@
1
1
  // @bun
2
- import{CodeBlock as a,InstallCommand as o}from"@contractspec/lib.design-system";import c from"@contractspec/lib.ui-link";import{ChevronRight as l}from"lucide-react";import{jsx as e,jsxs as t}from"react/jsx-runtime";function s(){return t("div",{className:"space-y-8",children:[t("div",{className:"space-y-2",children:[e("h1",{className:"font-bold text-4xl",children:"Start here"}),e("p",{className:"text-lg text-muted-foreground",children:"A fast onboarding path from install to your first generated contract."})]}),t("div",{className:"space-y-6",children:[t("div",{className:"space-y-3",children:[e("h2",{className:"font-bold text-2xl",children:"Install the CLI"}),e(o,{package:"contractspec",dev:!0})]}),t("div",{className:"space-y-3",children:[e("h2",{className:"font-bold text-2xl",children:"Add core libraries"}),e(o,{package:["@contractspec/lib.contracts-spec","@contractspec/lib.schema"]})]}),t("div",{className:"space-y-3",children:[e("h2",{className:"font-bold text-2xl",children:"Initialize your project"}),e(a,{language:"bash",filename:"start-here-init",code:"bunx contractspec init"})]}),t("div",{className:"space-y-3",children:[e("h2",{className:"font-bold text-2xl",children:"Create your first contract"}),e(a,{language:"bash",filename:"start-here-create",code:"contractspec create --type operation"})]}),t("div",{className:"space-y-3",children:[e("h2",{className:"font-bold text-2xl",children:"Generate implementation"}),e(a,{language:"bash",filename:"start-here-build",code:`contractspec build src/contracts/mySpec.ts
3
- contractspec validate src/contracts/mySpec.ts`})]})]}),t("div",{className:"flex flex-wrap items-center gap-3 pt-2",children:[t(c,{href:"/docs/getting-started/hello-world",className:"btn-primary",children:["Next: Hello World ",e(l,{size:16})]}),e(c,{href:"/docs/getting-started/troubleshooting",className:"btn-ghost",children:"Troubleshooting"}),e(c,{href:"/docs/getting-started/compatibility",className:"btn-ghost",children:"Compatibility"})]})]})}export{s as StartHerePage};
2
+ import{CodeBlock as t,InstallCommand as c}from"@contractspec/lib.design-system";import o from"@contractspec/lib.ui-link";import{ChevronRight as l}from"lucide-react";import{jsx as e,jsxs as a}from"react/jsx-runtime";function d(){return a("div",{className:"space-y-8",children:[a("div",{className:"space-y-2",children:[e("h1",{className:"font-bold text-4xl",children:"Start here"}),e("p",{className:"text-lg text-muted-foreground",children:"A fast onboarding path from install to your first generated contract."})]}),a("div",{className:"space-y-6",children:[a("div",{className:"space-y-3",children:[e("h2",{className:"font-bold text-2xl",children:"Install the CLI"}),e(c,{package:"contractspec",dev:!0})]}),a("div",{className:"space-y-3",children:[e("h2",{className:"font-bold text-2xl",children:"Generate repo-local guidance"}),e(t,{language:"bash",filename:"start-here-onboard",code:`contractspec onboard
3
+ # optional focused track
4
+ contractspec onboard knowledge --example knowledge-canon`})]}),a("div",{className:"space-y-3",children:[e("h2",{className:"font-bold text-2xl",children:"Initialize your project"}),e(t,{language:"bash",filename:"start-here-init",code:"bunx contractspec init"})]}),a("div",{className:"space-y-3",children:[e("h2",{className:"font-bold text-2xl",children:"Author your first contract"}),e(t,{language:"bash",filename:"start-here-create",code:"contractspec create --type operation"})]}),a("div",{className:"space-y-3",children:[e("h2",{className:"font-bold text-2xl",children:"Generate implementation"}),e(t,{language:"bash",filename:"start-here-build",code:`contractspec generate
5
+ contractspec validate`})]})]}),a("div",{className:"flex flex-wrap items-center gap-3 pt-2",children:[a(o,{href:"/docs/getting-started/hello-world",className:"btn-primary",children:["Next: Hello World ",e(l,{size:16})]}),e(o,{href:"/docs/getting-started/troubleshooting",className:"btn-ghost",children:"Troubleshooting"}),e(o,{href:"/docs/getting-started/compatibility",className:"btn-ghost",children:"Compatibility"})]})]})}export{d as StartHerePage};