@specverse/engine-realize 3.5.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (420) hide show
  1. package/assets/examples/09-api/ai-spec.yaml +194 -0
  2. package/assets/examples/09-api/converted.yaml +95 -0
  3. package/assets/examples/09-api/diagram-architecture.mmd +10 -0
  4. package/assets/examples/09-api/diagram-er.mmd +10 -0
  5. package/assets/examples/09-api/documentation.html +104 -0
  6. package/assets/examples/09-api/documentation.md +95 -0
  7. package/assets/examples/09-api/inferred-spec.yaml +420 -0
  8. package/assets/examples/09-api/openapi.json +61 -0
  9. package/assets/examples/10-api/README.md +216 -0
  10. package/assets/examples/10-api/ai-spec.yaml +194 -0
  11. package/assets/examples/10-api/converted.yaml +96 -0
  12. package/assets/examples/10-api/diagram-architecture.mmd +10 -0
  13. package/assets/examples/10-api/diagram-er.mmd +10 -0
  14. package/assets/examples/10-api/documentation.html +104 -0
  15. package/assets/examples/10-api/documentation.md +95 -0
  16. package/assets/examples/10-api/inferred-spec.yaml +7 -0
  17. package/assets/examples/10-api/metadata.yaml +89 -0
  18. package/assets/examples/10-api/openapi.json +61 -0
  19. package/assets/examples/10-api/package-integration-test.js +177 -0
  20. package/assets/examples/10-api/usage-example.js +323 -0
  21. package/assets/examples/10-api/usage-example.ts +363 -0
  22. package/assets/examples/10-api/workflow-test.js +113 -0
  23. package/assets/examples/manifests/01-simple-default-mappings.yaml +36 -0
  24. package/assets/examples/manifests/02-capability-mappings.yaml +55 -0
  25. package/assets/examples/manifests/03-hybrid-mappings.yaml +109 -0
  26. package/assets/examples/manifests/README.md +245 -0
  27. package/assets/examples/manifests/backend-only.yaml +43 -0
  28. package/assets/examples/manifests/blog-api.md +78 -0
  29. package/assets/examples/manifests/blog-api.specly +79 -0
  30. package/assets/examples/manifests/frontend-only.yaml +27 -0
  31. package/assets/examples/manifests/fullstack-app.yaml +44 -0
  32. package/assets/examples/manifests/fullstack-monorepo.yaml +62 -0
  33. package/assets/examples/validate-examples-with-expected-failures.cjs +328 -0
  34. package/assets/examples/validate-examples.cjs +225 -0
  35. package/assets/examples-decomposed/cloud-native-manifest.example.yaml +8 -0
  36. package/assets/examples-decomposed/cloud-native-manifest.md +379 -0
  37. package/assets/examples-decomposed/cloud-native-manifest.specly +60 -0
  38. package/assets/examples-decomposed/docker-compose-manifest.example.yaml +8 -0
  39. package/assets/examples-decomposed/docker-compose-manifest.md +326 -0
  40. package/assets/examples-decomposed/docker-compose-manifest.specly +40 -0
  41. package/assets/examples-decomposed/kubernetes-deployment-manifest.example.yaml +8 -0
  42. package/assets/examples-decomposed/kubernetes-deployment-manifest.md +237 -0
  43. package/assets/examples-decomposed/kubernetes-deployment-manifest.specly +41 -0
  44. package/assets/templates/README.md +559 -0
  45. package/assets/templates/TEMPLATE-ENHANCEMENTS-V33.md +462 -0
  46. package/assets/templates/backend-only/CLAUDE.md +73 -0
  47. package/assets/templates/backend-only/README.md +197 -0
  48. package/assets/templates/backend-only/deployments/README.md +149 -0
  49. package/assets/templates/backend-only/deployments/development.specly +53 -0
  50. package/assets/templates/backend-only/deployments/production.specly +87 -0
  51. package/assets/templates/backend-only/docs/README.md +50 -0
  52. package/assets/templates/backend-only/docs/api/README.md +7 -0
  53. package/assets/templates/backend-only/docs/diagrams/README.md +85 -0
  54. package/assets/templates/backend-only/docs/example-documentation-template.md +269 -0
  55. package/assets/templates/backend-only/docs/guides/README.md +15 -0
  56. package/assets/templates/backend-only/dot.env.example +18 -0
  57. package/assets/templates/backend-only/generated/README.md +56 -0
  58. package/assets/templates/backend-only/generated/code/integration-test.template.js +320 -0
  59. package/assets/templates/backend-only/generated/code/package.json.template +34 -0
  60. package/assets/templates/backend-only/generated/docs/README.md +49 -0
  61. package/assets/templates/backend-only/gitignore +54 -0
  62. package/assets/templates/backend-only/manifests/README.md +72 -0
  63. package/assets/templates/backend-only/manifests/docker-compose.specly +91 -0
  64. package/assets/templates/backend-only/manifests/implementation.yaml +100 -0
  65. package/assets/templates/backend-only/manifests/kubernetes.specly +140 -0
  66. package/assets/templates/backend-only/package.json +59 -0
  67. package/assets/templates/backend-only/scripts/test-all.sh +160 -0
  68. package/assets/templates/backend-only/scripts/test-generated-code.sh +165 -0
  69. package/assets/templates/backend-only/specs/main.specly +67 -0
  70. package/assets/templates/default/CLAUDE.md +141 -0
  71. package/assets/templates/default/README.md +404 -0
  72. package/assets/templates/default/deployments/README.md +149 -0
  73. package/assets/templates/default/deployments/development.specly +53 -0
  74. package/assets/templates/default/deployments/production.specly +87 -0
  75. package/assets/templates/default/docs/README.md +50 -0
  76. package/assets/templates/default/docs/api/README.md +7 -0
  77. package/assets/templates/default/docs/diagrams/README.md +85 -0
  78. package/assets/templates/default/docs/example-documentation-template.md +269 -0
  79. package/assets/templates/default/docs/guides/README.md +15 -0
  80. package/assets/templates/default/dot.env.example +18 -0
  81. package/assets/templates/default/generated/README.md +56 -0
  82. package/assets/templates/default/generated/code/integration-test.template.js +320 -0
  83. package/assets/templates/default/generated/code/package.json.template +34 -0
  84. package/assets/templates/default/generated/docs/README.md +49 -0
  85. package/assets/templates/default/gitignore +54 -0
  86. package/assets/templates/default/manifests/README.md +72 -0
  87. package/assets/templates/default/manifests/docker-compose.specly +91 -0
  88. package/assets/templates/default/manifests/implementation.yaml +176 -0
  89. package/assets/templates/default/manifests/kubernetes.specly +140 -0
  90. package/assets/templates/default/package.json +61 -0
  91. package/assets/templates/default/scripts/test-all.sh +160 -0
  92. package/assets/templates/default/scripts/test-generated-code.sh +165 -0
  93. package/assets/templates/default/specs/main.specly +67 -0
  94. package/assets/templates/frontend-only/CLAUDE.md +75 -0
  95. package/assets/templates/frontend-only/README.md +231 -0
  96. package/assets/templates/frontend-only/deployments/README.md +149 -0
  97. package/assets/templates/frontend-only/deployments/development.specly +53 -0
  98. package/assets/templates/frontend-only/deployments/production.specly +87 -0
  99. package/assets/templates/frontend-only/docs/README.md +50 -0
  100. package/assets/templates/frontend-only/docs/api/README.md +7 -0
  101. package/assets/templates/frontend-only/docs/diagrams/README.md +85 -0
  102. package/assets/templates/frontend-only/docs/example-documentation-template.md +269 -0
  103. package/assets/templates/frontend-only/docs/guides/README.md +15 -0
  104. package/assets/templates/frontend-only/dot.env.example +18 -0
  105. package/assets/templates/frontend-only/generated/README.md +56 -0
  106. package/assets/templates/frontend-only/generated/code/integration-test.template.js +320 -0
  107. package/assets/templates/frontend-only/generated/code/package.json.template +34 -0
  108. package/assets/templates/frontend-only/generated/docs/README.md +49 -0
  109. package/assets/templates/frontend-only/gitignore +54 -0
  110. package/assets/templates/frontend-only/manifests/README.md +72 -0
  111. package/assets/templates/frontend-only/manifests/docker-compose.specly +91 -0
  112. package/assets/templates/frontend-only/manifests/implementation.yaml +58 -0
  113. package/assets/templates/frontend-only/manifests/kubernetes.specly +140 -0
  114. package/assets/templates/frontend-only/package.json +59 -0
  115. package/assets/templates/frontend-only/scripts/test-all.sh +160 -0
  116. package/assets/templates/frontend-only/scripts/test-generated-code.sh +165 -0
  117. package/assets/templates/frontend-only/specs/main.specly +57 -0
  118. package/assets/templates/full-stack/AI-GUIDE.md +60 -0
  119. package/assets/templates/full-stack/CLAUDE.md +141 -0
  120. package/assets/templates/full-stack/README.md +382 -0
  121. package/assets/templates/full-stack/archive/AI-GUIDE-legacy.md +392 -0
  122. package/assets/templates/full-stack/deployments/README.md +149 -0
  123. package/assets/templates/full-stack/deployments/development.specly +53 -0
  124. package/assets/templates/full-stack/deployments/production.specly +87 -0
  125. package/assets/templates/full-stack/docs/README.md +51 -0
  126. package/assets/templates/full-stack/docs/api/README.md +7 -0
  127. package/assets/templates/full-stack/docs/diagrams/README.md +85 -0
  128. package/assets/templates/full-stack/docs/example-documentation-template.md +269 -0
  129. package/assets/templates/full-stack/docs/guides/README.md +15 -0
  130. package/assets/templates/full-stack/generated/README.md +56 -0
  131. package/assets/templates/full-stack/generated/code/integration-test.template.js +320 -0
  132. package/assets/templates/full-stack/generated/code/package.json.template +34 -0
  133. package/assets/templates/full-stack/generated/docs/README.md +49 -0
  134. package/assets/templates/full-stack/gitignore +54 -0
  135. package/assets/templates/full-stack/manifests/README.md +72 -0
  136. package/assets/templates/full-stack/manifests/docker-compose.specly +91 -0
  137. package/assets/templates/full-stack/manifests/implementation.yaml +155 -0
  138. package/assets/templates/full-stack/manifests/kubernetes.specly +140 -0
  139. package/assets/templates/full-stack/package.json +45 -0
  140. package/assets/templates/full-stack/scripts/test-all.sh +160 -0
  141. package/assets/templates/full-stack/scripts/test-generated-code.sh +165 -0
  142. package/assets/templates/full-stack/specs/example-v33.specly +297 -0
  143. package/assets/templates/full-stack/specs/main-simple.specly +73 -0
  144. package/assets/templates/full-stack/specs/main.specly +408 -0
  145. package/dist/engines/code-generator.d.ts +86 -0
  146. package/dist/engines/code-generator.d.ts.map +1 -0
  147. package/dist/engines/code-generator.js +159 -0
  148. package/dist/engines/code-generator.js.map +1 -0
  149. package/dist/engines/engine-registry.d.ts +94 -0
  150. package/dist/engines/engine-registry.d.ts.map +1 -0
  151. package/dist/engines/engine-registry.js +163 -0
  152. package/dist/engines/engine-registry.js.map +1 -0
  153. package/dist/engines/index.d.ts +10 -0
  154. package/dist/engines/index.d.ts.map +1 -0
  155. package/dist/engines/index.js +12 -0
  156. package/dist/engines/index.js.map +1 -0
  157. package/dist/engines/typescript-engine.d.ts +74 -0
  158. package/dist/engines/typescript-engine.d.ts.map +1 -0
  159. package/dist/engines/typescript-engine.js +288 -0
  160. package/dist/engines/typescript-engine.js.map +1 -0
  161. package/dist/generators/index.d.ts +11 -0
  162. package/dist/generators/index.d.ts.map +1 -0
  163. package/dist/generators/index.js +11 -0
  164. package/dist/generators/index.js.map +1 -0
  165. package/dist/index.d.ts +48 -0
  166. package/dist/index.d.ts.map +1 -0
  167. package/dist/index.js +434 -0
  168. package/dist/index.js.map +1 -0
  169. package/dist/library/index.d.ts +12 -0
  170. package/dist/library/index.d.ts.map +1 -0
  171. package/dist/library/index.js +15 -0
  172. package/dist/library/index.js.map +1 -0
  173. package/dist/library/library.d.ts +132 -0
  174. package/dist/library/library.d.ts.map +1 -0
  175. package/dist/library/library.js +343 -0
  176. package/dist/library/library.js.map +1 -0
  177. package/dist/library/loader.d.ts +73 -0
  178. package/dist/library/loader.d.ts.map +1 -0
  179. package/dist/library/loader.js +150 -0
  180. package/dist/library/loader.js.map +1 -0
  181. package/dist/library/resolver.d.ts +104 -0
  182. package/dist/library/resolver.d.ts.map +1 -0
  183. package/dist/library/resolver.js +299 -0
  184. package/dist/library/resolver.js.map +1 -0
  185. package/dist/library/validator.d.ts +65 -0
  186. package/dist/library/validator.d.ts.map +1 -0
  187. package/dist/library/validator.js +203 -0
  188. package/dist/library/validator.js.map +1 -0
  189. package/dist/types/index.d.ts +7 -0
  190. package/dist/types/index.d.ts.map +1 -0
  191. package/dist/types/index.js +7 -0
  192. package/dist/types/index.js.map +1 -0
  193. package/dist/types/instance-factory.d.ts +289 -0
  194. package/dist/types/instance-factory.d.ts.map +1 -0
  195. package/dist/types/instance-factory.js +8 -0
  196. package/dist/types/instance-factory.js.map +1 -0
  197. package/dist/types/unified-mappings.d.ts +163 -0
  198. package/dist/types/unified-mappings.d.ts.map +1 -0
  199. package/dist/types/unified-mappings.js +110 -0
  200. package/dist/types/unified-mappings.js.map +1 -0
  201. package/dist/utils/ai-spec-loader.d.ts +77 -0
  202. package/dist/utils/ai-spec-loader.d.ts.map +1 -0
  203. package/dist/utils/ai-spec-loader.js +138 -0
  204. package/dist/utils/ai-spec-loader.js.map +1 -0
  205. package/dist/utils/index.d.ts +9 -0
  206. package/dist/utils/index.d.ts.map +1 -0
  207. package/dist/utils/index.js +9 -0
  208. package/dist/utils/index.js.map +1 -0
  209. package/dist/utils/manifest-loader.d.ts +107 -0
  210. package/dist/utils/manifest-loader.d.ts.map +1 -0
  211. package/dist/utils/manifest-loader.js +168 -0
  212. package/dist/utils/manifest-loader.js.map +1 -0
  213. package/dist/utils/mapping-migration.d.ts +53 -0
  214. package/dist/utils/mapping-migration.d.ts.map +1 -0
  215. package/dist/utils/mapping-migration.js +194 -0
  216. package/dist/utils/mapping-migration.js.map +1 -0
  217. package/libs/instance-factories/CURVED-INTERFACE.md +278 -0
  218. package/libs/instance-factories/README.md +433 -0
  219. package/libs/instance-factories/applications/generic-app.yaml +52 -0
  220. package/libs/instance-factories/applications/react-app.yaml +186 -0
  221. package/libs/instance-factories/applications/templates/generic/backend-env-generator.ts +31 -0
  222. package/libs/instance-factories/applications/templates/generic/backend-package-json-generator.ts +80 -0
  223. package/libs/instance-factories/applications/templates/generic/backend-tsconfig-generator.ts +69 -0
  224. package/libs/instance-factories/applications/templates/generic/main-generator.ts +308 -0
  225. package/libs/instance-factories/applications/templates/react/_view-components-source.ts +555 -0
  226. package/libs/instance-factories/applications/templates/react/api-client-generator.ts +436 -0
  227. package/libs/instance-factories/applications/templates/react/api-types-generator.ts +153 -0
  228. package/libs/instance-factories/applications/templates/react/app-tsx-generator.ts +94 -0
  229. package/libs/instance-factories/applications/templates/react/env-example-generator.ts +24 -0
  230. package/libs/instance-factories/applications/templates/react/field-helpers-generator.ts +106 -0
  231. package/libs/instance-factories/applications/templates/react/gitignore-generator.ts +38 -0
  232. package/libs/instance-factories/applications/templates/react/index-css-generator.ts +85 -0
  233. package/libs/instance-factories/applications/templates/react/index-html-generator.ts +30 -0
  234. package/libs/instance-factories/applications/templates/react/main-tsx-generator.ts +34 -0
  235. package/libs/instance-factories/applications/templates/react/package-json-generator.ts +54 -0
  236. package/libs/instance-factories/applications/templates/react/pattern-adapter-generator.ts +179 -0
  237. package/libs/instance-factories/applications/templates/react/react-pattern-adapter.tsx +1347 -0
  238. package/libs/instance-factories/applications/templates/react/relationship-field-generator.ts +150 -0
  239. package/libs/instance-factories/applications/templates/react/tailwind-adapter-generator.ts +704 -0
  240. package/libs/instance-factories/applications/templates/react/tailwind-adapter-wrapper-generator.ts +84 -0
  241. package/libs/instance-factories/applications/templates/react/tsconfig-generator.ts +35 -0
  242. package/libs/instance-factories/applications/templates/react/use-api-hooks-generator.ts +121 -0
  243. package/libs/instance-factories/applications/templates/react/view-dashboard-generator.ts +150 -0
  244. package/libs/instance-factories/applications/templates/react/view-detail-generator.ts +150 -0
  245. package/libs/instance-factories/applications/templates/react/view-form-generator.ts +362 -0
  246. package/libs/instance-factories/applications/templates/react/view-list-generator.ts +98 -0
  247. package/libs/instance-factories/applications/templates/react/view-router-generator.ts +89 -0
  248. package/libs/instance-factories/applications/templates/react/vite-config-generator.ts +49 -0
  249. package/libs/instance-factories/archived/fastify-prisma.yaml +104 -0
  250. package/libs/instance-factories/cli/commander-js.yaml +55 -0
  251. package/libs/instance-factories/cli/templates/commander/cli-entry-generator.d.ts +12 -0
  252. package/libs/instance-factories/cli/templates/commander/cli-entry-generator.d.ts.map +1 -0
  253. package/libs/instance-factories/cli/templates/commander/cli-entry-generator.js +115 -0
  254. package/libs/instance-factories/cli/templates/commander/cli-entry-generator.js.map +1 -0
  255. package/libs/instance-factories/cli/templates/commander/cli-entry-generator.ts +145 -0
  256. package/libs/instance-factories/cli/templates/commander/command-generator.d.ts +14 -0
  257. package/libs/instance-factories/cli/templates/commander/command-generator.d.ts.map +1 -0
  258. package/libs/instance-factories/cli/templates/commander/command-generator.js +182 -0
  259. package/libs/instance-factories/cli/templates/commander/command-generator.js.map +1 -0
  260. package/libs/instance-factories/cli/templates/commander/command-generator.ts +992 -0
  261. package/libs/instance-factories/communication/event-emitter.yaml +56 -0
  262. package/libs/instance-factories/communication/rabbitmq-events.yaml +87 -0
  263. package/libs/instance-factories/communication/templates/eventemitter/bus-generator.ts +93 -0
  264. package/libs/instance-factories/communication/templates/eventemitter/publisher-generator.ts +117 -0
  265. package/libs/instance-factories/communication/templates/eventemitter/subscriber-generator.ts +101 -0
  266. package/libs/instance-factories/controllers/fastify.yaml +127 -0
  267. package/libs/instance-factories/controllers/templates/fastify/meta-routes-generator.ts +103 -0
  268. package/libs/instance-factories/controllers/templates/fastify/routes-generator.ts +389 -0
  269. package/libs/instance-factories/controllers/templates/fastify/server-generator.ts +76 -0
  270. package/libs/instance-factories/infrastructure/docker-k8s.yaml +61 -0
  271. package/libs/instance-factories/infrastructure/templates/docker-k8s/infrastructure-generator.ts +46 -0
  272. package/libs/instance-factories/orms/prisma.yaml +89 -0
  273. package/libs/instance-factories/orms/templates/prisma/schema-generator.ts +563 -0
  274. package/libs/instance-factories/orms/templates/prisma/services-generator.ts +408 -0
  275. package/libs/instance-factories/scaffolding/generic-scaffold.yaml +65 -0
  276. package/libs/instance-factories/scaffolding/templates/generic/env-example-generator.ts +73 -0
  277. package/libs/instance-factories/scaffolding/templates/generic/env-generator.ts +85 -0
  278. package/libs/instance-factories/scaffolding/templates/generic/gitignore-generator.ts +69 -0
  279. package/libs/instance-factories/scaffolding/templates/generic/package-json-generator.ts +176 -0
  280. package/libs/instance-factories/scaffolding/templates/generic/readme-generator.ts +207 -0
  281. package/libs/instance-factories/scaffolding/templates/generic/tsconfig-generator.ts +78 -0
  282. package/libs/instance-factories/scaffolding/templates/generic/tsconfig-react-generator.ts +41 -0
  283. package/libs/instance-factories/sdks/python-sdk.yaml +66 -0
  284. package/libs/instance-factories/sdks/templates/python/sdk-generator.ts +50 -0
  285. package/libs/instance-factories/sdks/templates/typescript/sdk-generator.ts +49 -0
  286. package/libs/instance-factories/sdks/typescript-sdk.yaml +59 -0
  287. package/libs/instance-factories/services/prisma-services.yaml +71 -0
  288. package/libs/instance-factories/services/templates/prisma/behavior-generator.ts +303 -0
  289. package/libs/instance-factories/services/templates/prisma/controller-generator.ts +532 -0
  290. package/libs/instance-factories/services/templates/prisma/service-generator.ts +315 -0
  291. package/libs/instance-factories/shared/path-resolver.ts +111 -0
  292. package/libs/instance-factories/storage/mongodb.yaml +79 -0
  293. package/libs/instance-factories/storage/postgresql.yaml +75 -0
  294. package/libs/instance-factories/storage/redis.yaml +79 -0
  295. package/libs/instance-factories/storage/templates/mongodb/config-generator.ts +15 -0
  296. package/libs/instance-factories/storage/templates/mongodb/docker-generator.ts +18 -0
  297. package/libs/instance-factories/storage/templates/postgresql/config-generator.ts +54 -0
  298. package/libs/instance-factories/storage/templates/postgresql/docker-generator.ts +55 -0
  299. package/libs/instance-factories/storage/templates/redis/config-generator.ts +16 -0
  300. package/libs/instance-factories/storage/templates/redis/docker-generator.ts +18 -0
  301. package/libs/instance-factories/test-generation.ts +192 -0
  302. package/libs/instance-factories/testing/templates/vitest/tests-generator.ts +51 -0
  303. package/libs/instance-factories/testing/vitest-tests.yaml +63 -0
  304. package/libs/instance-factories/tools/templates/mcp/mcp-server-generator.ts +136 -0
  305. package/libs/instance-factories/tools/templates/mcp/static/docs/DEPLOYMENT_GUIDE.md +630 -0
  306. package/libs/instance-factories/tools/templates/mcp/static/docs/HYBRID_RESOURCE_SYSTEM.md +330 -0
  307. package/libs/instance-factories/tools/templates/mcp/static/docs/deployments/EXTENSION_DEPLOYMENT.md +552 -0
  308. package/libs/instance-factories/tools/templates/mcp/static/docs/deployments/LOCAL_DEPLOYMENT.md +164 -0
  309. package/libs/instance-factories/tools/templates/mcp/static/docs/deployments/WEB_DEPLOYMENT.md +247 -0
  310. package/libs/instance-factories/tools/templates/mcp/static/package.json +92 -0
  311. package/libs/instance-factories/tools/templates/mcp/static/scripts/build-enterprise.js +284 -0
  312. package/libs/instance-factories/tools/templates/mcp/static/scripts/build-extension.js +139 -0
  313. package/libs/instance-factories/tools/templates/mcp/static/scripts/build-local.js +74 -0
  314. package/libs/instance-factories/tools/templates/mcp/static/scripts/build-web.js +156 -0
  315. package/libs/instance-factories/tools/templates/mcp/static/scripts/copy-canonical-files.js +41 -0
  316. package/libs/instance-factories/tools/templates/mcp/static/scripts/test-deployments.js +259 -0
  317. package/libs/instance-factories/tools/templates/mcp/static/scripts/test-hybrid-resources.js +231 -0
  318. package/libs/instance-factories/tools/templates/mcp/static/scripts/test-hybrid-simple.js +196 -0
  319. package/libs/instance-factories/tools/templates/mcp/static/src/controllers/MCPServerController.ts +293 -0
  320. package/libs/instance-factories/tools/templates/mcp/static/src/events/EventEmitter.ts +90 -0
  321. package/libs/instance-factories/tools/templates/mcp/static/src/index.ts +24 -0
  322. package/libs/instance-factories/tools/templates/mcp/static/src/interfaces/ResourceProvider.ts +15 -0
  323. package/libs/instance-factories/tools/templates/mcp/static/src/models/LibrarySuggestion.ts +106 -0
  324. package/libs/instance-factories/tools/templates/mcp/static/src/models/SpecVerseResource.ts +75 -0
  325. package/libs/instance-factories/tools/templates/mcp/static/src/server/mcp-server.ts +239 -0
  326. package/libs/instance-factories/tools/templates/mcp/static/src/services/CLIProxyService.ts +1501 -0
  327. package/libs/instance-factories/tools/templates/mcp/static/src/services/EmbeddedResourcesAdapter.ts +211 -0
  328. package/libs/instance-factories/tools/templates/mcp/static/src/services/EntityModuleService.ts +308 -0
  329. package/libs/instance-factories/tools/templates/mcp/static/src/services/HybridResourcesProvider.ts +210 -0
  330. package/libs/instance-factories/tools/templates/mcp/static/src/services/LibraryToolsService.ts +356 -0
  331. package/libs/instance-factories/tools/templates/mcp/static/src/services/OrchestratorBridge.ts +524 -0
  332. package/libs/instance-factories/tools/templates/mcp/static/src/services/OrchestratorToolsService.ts +530 -0
  333. package/libs/instance-factories/tools/templates/mcp/static/src/services/PromptToolsService.ts +594 -0
  334. package/libs/instance-factories/tools/templates/mcp/static/src/services/ResourcesProviderService.ts +170 -0
  335. package/libs/instance-factories/tools/templates/mcp/static/src/tests/unit/CLIProxyService.init.test.ts +544 -0
  336. package/libs/instance-factories/tools/templates/mcp/static/src/tests/unit/CLIProxyService.test.ts +189 -0
  337. package/libs/instance-factories/tools/templates/mcp/static/src/tests/unit/ResourcesProviderService.test.ts +89 -0
  338. package/libs/instance-factories/tools/templates/mcp/static/src/types/index.ts +110 -0
  339. package/libs/instance-factories/tools/templates/mcp/static/tsconfig.json +28 -0
  340. package/libs/instance-factories/tools/templates/vscode/static/extension.ts +1195 -0
  341. package/libs/instance-factories/tools/templates/vscode/static/language-configuration.json +34 -0
  342. package/libs/instance-factories/tools/templates/vscode/static/schemas/specverse-v3-schema.json +4279 -0
  343. package/libs/instance-factories/tools/templates/vscode/static/syntaxes/specverse.tmLanguage.json +138 -0
  344. package/libs/instance-factories/tools/templates/vscode/static/themes/README.md +74 -0
  345. package/libs/instance-factories/tools/templates/vscode/static/themes/complete-specverse-colors.json +122 -0
  346. package/libs/instance-factories/tools/templates/vscode/static/themes/specverse-basic-theme.json +65 -0
  347. package/libs/instance-factories/tools/templates/vscode/static/themes/specverse-complete-theme.json +123 -0
  348. package/libs/instance-factories/tools/templates/vscode/static/themes/specverse-theme-colors.json +64 -0
  349. package/libs/instance-factories/tools/templates/vscode/vscode-extension-generator.ts +214 -0
  350. package/libs/instance-factories/validation/templates/zod/validation-generator.ts +46 -0
  351. package/libs/instance-factories/validation/zod.yaml +56 -0
  352. package/libs/instance-factories/views/index.d.ts +13 -0
  353. package/libs/instance-factories/views/index.d.ts.map +1 -0
  354. package/libs/instance-factories/views/index.js +18 -0
  355. package/libs/instance-factories/views/index.js.map +1 -0
  356. package/libs/instance-factories/views/index.ts +45 -0
  357. package/libs/instance-factories/views/react-components.yaml +129 -0
  358. package/libs/instance-factories/views/templates/ARCHITECTURE.md +198 -0
  359. package/libs/instance-factories/views/templates/react/adapters/antd-adapter.ts +869 -0
  360. package/libs/instance-factories/views/templates/react/adapters/mui-adapter.ts +953 -0
  361. package/libs/instance-factories/views/templates/react/adapters/shadcn-adapter.ts +806 -0
  362. package/libs/instance-factories/views/templates/react/app-generator.ts +55 -0
  363. package/libs/instance-factories/views/templates/react/components-generator.ts +391 -0
  364. package/libs/instance-factories/views/templates/react/forms-generator.ts +343 -0
  365. package/libs/instance-factories/views/templates/react/frontend-package-json-generator.ts +54 -0
  366. package/libs/instance-factories/views/templates/react/hooks-generator.ts +122 -0
  367. package/libs/instance-factories/views/templates/react/index-css-generator.ts +209 -0
  368. package/libs/instance-factories/views/templates/react/index-html-generator.ts +34 -0
  369. package/libs/instance-factories/views/templates/react/main-tsx-generator.ts +29 -0
  370. package/libs/instance-factories/views/templates/react/react-component-generator.d.ts +152 -0
  371. package/libs/instance-factories/views/templates/react/react-component-generator.d.ts.map +1 -0
  372. package/libs/instance-factories/views/templates/react/react-component-generator.js +398 -0
  373. package/libs/instance-factories/views/templates/react/react-component-generator.js.map +1 -0
  374. package/libs/instance-factories/views/templates/react/react-component-generator.ts +533 -0
  375. package/libs/instance-factories/views/templates/react/router-generator.ts +197 -0
  376. package/libs/instance-factories/views/templates/react/router-generic-generator.ts +103 -0
  377. package/libs/instance-factories/views/templates/react/spec-json-generator.ts +17 -0
  378. package/libs/instance-factories/views/templates/react/types-generator.ts +76 -0
  379. package/libs/instance-factories/views/templates/react/views-metadata-generator.ts +42 -0
  380. package/libs/instance-factories/views/templates/react/vite-config-generator.ts +38 -0
  381. package/libs/instance-factories/views/templates/runtime/runtime-view-renderer.d.ts.map +1 -0
  382. package/libs/instance-factories/views/templates/runtime/runtime-view-renderer.js.map +1 -0
  383. package/libs/instance-factories/views/templates/runtime/runtime-view-renderer.ts +474 -0
  384. package/libs/instance-factories/views/templates/shared/__tests__/composite-patterns.test.ts +242 -0
  385. package/libs/instance-factories/views/templates/shared/adapter-types.d.ts +77 -0
  386. package/libs/instance-factories/views/templates/shared/adapter-types.d.ts.map +1 -0
  387. package/libs/instance-factories/views/templates/shared/adapter-types.js +47 -0
  388. package/libs/instance-factories/views/templates/shared/adapter-types.js.map +1 -0
  389. package/libs/instance-factories/views/templates/shared/adapter-types.ts +142 -0
  390. package/libs/instance-factories/views/templates/shared/atomic-components-registry.d.ts +63 -0
  391. package/libs/instance-factories/views/templates/shared/atomic-components-registry.d.ts.map +1 -0
  392. package/libs/instance-factories/views/templates/shared/atomic-components-registry.js +822 -0
  393. package/libs/instance-factories/views/templates/shared/atomic-components-registry.js.map +1 -0
  394. package/libs/instance-factories/views/templates/shared/atomic-components-registry.ts +908 -0
  395. package/libs/instance-factories/views/templates/shared/base-generator.d.ts +247 -0
  396. package/libs/instance-factories/views/templates/shared/base-generator.d.ts.map +1 -0
  397. package/libs/instance-factories/views/templates/shared/base-generator.js +363 -0
  398. package/libs/instance-factories/views/templates/shared/base-generator.js.map +1 -0
  399. package/libs/instance-factories/views/templates/shared/base-generator.ts +608 -0
  400. package/libs/instance-factories/views/templates/shared/component-metadata.d.ts +254 -0
  401. package/libs/instance-factories/views/templates/shared/component-metadata.d.ts.map +1 -0
  402. package/libs/instance-factories/views/templates/shared/component-metadata.js +602 -0
  403. package/libs/instance-factories/views/templates/shared/component-metadata.js.map +1 -0
  404. package/libs/instance-factories/views/templates/shared/component-metadata.ts +803 -0
  405. package/libs/instance-factories/views/templates/shared/composite-pattern-types.ts +250 -0
  406. package/libs/instance-factories/views/templates/shared/composite-patterns.ts +535 -0
  407. package/libs/instance-factories/views/templates/shared/index.ts +68 -0
  408. package/libs/instance-factories/views/templates/shared/pattern-validator.ts +279 -0
  409. package/libs/instance-factories/views/templates/shared/property-mapper.d.ts +149 -0
  410. package/libs/instance-factories/views/templates/shared/property-mapper.d.ts.map +1 -0
  411. package/libs/instance-factories/views/templates/shared/property-mapper.js +580 -0
  412. package/libs/instance-factories/views/templates/shared/property-mapper.js.map +1 -0
  413. package/libs/instance-factories/views/templates/shared/property-mapper.ts +700 -0
  414. package/libs/instance-factories/views/templates/shared/syntax-mapper.d.ts +143 -0
  415. package/libs/instance-factories/views/templates/shared/syntax-mapper.d.ts.map +1 -0
  416. package/libs/instance-factories/views/templates/shared/syntax-mapper.js +420 -0
  417. package/libs/instance-factories/views/templates/shared/syntax-mapper.js.map +1 -0
  418. package/libs/instance-factories/views/templates/shared/syntax-mapper.ts +539 -0
  419. package/package.json +42 -0
  420. package/schema/SPECVERSE-SCHEMA.json +4274 -0
@@ -0,0 +1,194 @@
1
+ metadata:
2
+ component: SpecVerseFundamentals
3
+ version: 1.0.0
4
+ description: 'Example 01-01: Basic model definition with attributes'
5
+ tags: []
6
+ imports:
7
+ - from: '@specverse/primitives'
8
+ select:
9
+ - Money
10
+ exports: []
11
+ models:
12
+ - name: Product
13
+ attributes:
14
+ - name: id
15
+ type: UUID
16
+ constraints:
17
+ required: true
18
+ unique: false
19
+ pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$
20
+ format: uuid
21
+ dbMapping:
22
+ columnName: id
23
+ columnType: UUID
24
+ index: false
25
+ nullable: false
26
+ validation:
27
+ rules:
28
+ - required
29
+ metadata:
30
+ encrypted: false
31
+ audit: false
32
+ - name: name
33
+ type: String
34
+ constraints:
35
+ required: true
36
+ unique: false
37
+ dbMapping:
38
+ columnName: name
39
+ columnType: VARCHAR(255)
40
+ index: false
41
+ nullable: false
42
+ validation:
43
+ rules:
44
+ - required
45
+ metadata:
46
+ encrypted: false
47
+ audit: false
48
+ - name: summary
49
+ type: String
50
+ constraints:
51
+ required: false
52
+ unique: false
53
+ dbMapping:
54
+ columnName: summary
55
+ columnType: VARCHAR(255)
56
+ index: false
57
+ nullable: true
58
+ validation:
59
+ rules: []
60
+ metadata:
61
+ encrypted: false
62
+ audit: false
63
+ - name: price
64
+ type: Money
65
+ constraints:
66
+ required: true
67
+ unique: false
68
+ dbMapping:
69
+ columnName: price
70
+ columnType: VARCHAR(255)
71
+ index: false
72
+ nullable: false
73
+ validation:
74
+ rules:
75
+ - required
76
+ metadata:
77
+ encrypted: false
78
+ audit: false
79
+ - name: inStock
80
+ type: Boolean
81
+ constraints:
82
+ required: false
83
+ unique: false
84
+ dbMapping:
85
+ columnName: in_stock
86
+ columnType: BOOLEAN
87
+ index: false
88
+ nullable: true
89
+ defaultValue: 'true'
90
+ validation:
91
+ rules: []
92
+ metadata:
93
+ encrypted: false
94
+ audit: false
95
+ - name: category
96
+ type: String
97
+ constraints:
98
+ required: true
99
+ unique: false
100
+ dbMapping:
101
+ columnName: category
102
+ columnType: VARCHAR(255)
103
+ index: false
104
+ nullable: false
105
+ validation:
106
+ rules:
107
+ - required
108
+ metadata:
109
+ encrypted: false
110
+ audit: false
111
+ - name: contactEmail
112
+ type: Email
113
+ constraints:
114
+ required: false
115
+ unique: false
116
+ pattern: ^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$
117
+ format: email
118
+ dbMapping:
119
+ columnName: contact_email
120
+ columnType: VARCHAR(255)
121
+ index: false
122
+ nullable: true
123
+ validation:
124
+ rules:
125
+ - email
126
+ metadata:
127
+ encrypted: false
128
+ audit: false
129
+ relationships: []
130
+ behaviors:
131
+ - name: attachProfile
132
+ signature: 'attachProfile(profileName: String): Promise<Boolean>'
133
+ implementation:
134
+ preconditions:
135
+ - Profile exists and is compatible with this model
136
+ postconditions:
137
+ - Profile is attached
138
+ - Profile attributes are available
139
+ sideEffects: []
140
+ steps: []
141
+ transactional: true
142
+ metadata:
143
+ async: true
144
+ cacheable: false
145
+ idempotent: false
146
+ - name: detachProfile
147
+ signature: 'detachProfile(profileName: String): Promise<Boolean>'
148
+ implementation:
149
+ preconditions:
150
+ - Profile is currently attached
151
+ postconditions:
152
+ - Profile is detached
153
+ - Profile attributes are no longer available
154
+ sideEffects: []
155
+ steps: []
156
+ transactional: true
157
+ metadata:
158
+ async: true
159
+ cacheable: false
160
+ idempotent: false
161
+ - name: hasProfile
162
+ signature: 'hasProfile(profileName: String): Promise<Boolean>'
163
+ implementation:
164
+ preconditions: []
165
+ postconditions: []
166
+ sideEffects: []
167
+ steps: []
168
+ transactional: false
169
+ metadata:
170
+ async: true
171
+ cacheable: false
172
+ idempotent: false
173
+ lifecycle:
174
+ states: []
175
+ transitions: {}
176
+ currentStateField: state
177
+ dbMapping:
178
+ tableName: products
179
+ indexes: []
180
+ controllers: []
181
+ services: []
182
+ views: []
183
+ events: []
184
+ infrastructure:
185
+ database:
186
+ type: postgresql
187
+ migrations: true
188
+ seedData: false
189
+ messaging:
190
+ type: rabbitmq
191
+ queues: []
192
+ caching:
193
+ type: redis
194
+ ttl: 3600
@@ -0,0 +1,96 @@
1
+ components:
2
+ SpecVerseFundamentals:
3
+ version: 1.0.0
4
+ description: "Example 01-01: Basic model definition with attributes"
5
+ import:
6
+ - from: "@specverse/primitives"
7
+ select:
8
+ - Money
9
+ export:
10
+ models:
11
+ - Product
12
+ models:
13
+ Product:
14
+ description: Simple product with basic attributes
15
+ attributes:
16
+ id:
17
+ name: id
18
+ type: UUID
19
+ required: true
20
+ unique: false
21
+ name:
22
+ name: name
23
+ type: String
24
+ required: true
25
+ unique: false
26
+ summary:
27
+ name: summary
28
+ type: String
29
+ required: false
30
+ unique: false
31
+ price:
32
+ name: price
33
+ type: Money
34
+ required: true
35
+ unique: false
36
+ inStock:
37
+ name: inStock
38
+ type: Boolean
39
+ required: false
40
+ unique: false
41
+ default: "true"
42
+ category:
43
+ name: category
44
+ type: String
45
+ required: true
46
+ unique: false
47
+ values:
48
+ - electronics
49
+ - books
50
+ - clothing
51
+ - home
52
+ contactEmail:
53
+ name: contactEmail
54
+ type: Email
55
+ required: false
56
+ unique: false
57
+ behaviors:
58
+ attachProfile:
59
+ description: Attach a profile to this model instance
60
+ parameters:
61
+ profileName:
62
+ name: profileName
63
+ type: String
64
+ required: true
65
+ unique: false
66
+ returns: Boolean
67
+ requires:
68
+ - Profile exists and is compatible with this model
69
+ ensures:
70
+ - Profile is attached
71
+ - Profile attributes are available
72
+ detachProfile:
73
+ description: Detach a profile from this model instance
74
+ parameters:
75
+ profileName:
76
+ name: profileName
77
+ type: String
78
+ required: true
79
+ unique: false
80
+ returns: Boolean
81
+ requires:
82
+ - Profile is currently attached
83
+ ensures:
84
+ - Profile is detached
85
+ - Profile attributes are no longer available
86
+ hasProfile:
87
+ description: Check if a profile is attached to this model instance
88
+ parameters:
89
+ profileName:
90
+ name: profileName
91
+ type: String
92
+ required: true
93
+ unique: false
94
+ returns: Boolean
95
+ deployments: {}
96
+ manifests: {}
@@ -0,0 +1,10 @@
1
+ graph TB
2
+ subgraph "Client Layer"
3
+ end
4
+ subgraph "Controller Layer"
5
+ end
6
+ subgraph "Service Layer"
7
+ end
8
+ subgraph "Model Layer"
9
+ Product[(Product)]
10
+ end
@@ -0,0 +1,10 @@
1
+ erDiagram
2
+ Product {
3
+ uuid id "NOT NULL"
4
+ string name "NOT NULL"
5
+ string summary
6
+ string price "NOT NULL"
7
+ boolean inStock
8
+ string category "NOT NULL"
9
+ string contactEmail
10
+ }
@@ -0,0 +1,104 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>SpecVerseFundamentals Documentation</title>
7
+ <style>
8
+ body {
9
+ font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;
10
+ line-height: 1.6;
11
+ color: #333;
12
+ max-width: 900px;
13
+ margin: 0 auto;
14
+ padding: 20px;
15
+ }
16
+ h1, h2, h3, h4, h5 {
17
+ color: #2c3e50;
18
+ margin-top: 1.5em;
19
+ }
20
+ h1 { border-bottom: 2px solid #3498db; padding-bottom: 0.3em; }
21
+ h2 { border-bottom: 1px solid #ecf0f1; padding-bottom: 0.2em; }
22
+ table {
23
+ border-collapse: collapse;
24
+ width: 100%;
25
+ margin: 1em 0;
26
+ }
27
+ th, td {
28
+ border: 1px solid #ddd;
29
+ padding: 8px;
30
+ text-align: left;
31
+ }
32
+ th {
33
+ background-color: #f8f9fa;
34
+ font-weight: bold;
35
+ }
36
+ code {
37
+ background-color: #f4f4f4;
38
+ padding: 2px 4px;
39
+ border-radius: 3px;
40
+ font-family: 'Consolas', 'Monaco', 'Courier New', monospace;
41
+ }
42
+ pre {
43
+ background-color: #f4f4f4;
44
+ padding: 1em;
45
+ border-radius: 5px;
46
+ overflow-x: auto;
47
+ }
48
+ .toc {
49
+ background-color: #f8f9fa;
50
+ padding: 1em;
51
+ border-radius: 5px;
52
+ margin: 1em 0;
53
+ }
54
+ .toc ul {
55
+ list-style-type: none;
56
+ padding-left: 1em;
57
+ }
58
+ .toc a {
59
+ text-decoration: none;
60
+ color: #3498db;
61
+ }
62
+ .toc a:hover {
63
+ text-decoration: underline;
64
+ }
65
+ hr {
66
+ border: none;
67
+ border-top: 1px solid #ecf0f1;
68
+ margin: 2em 0;
69
+ }
70
+ </style>
71
+ </head>
72
+ <body>
73
+ <h1>SpecVerseFundamentals</h1><p>Example 01-01: Basic model definition with attributes</p><p><strong>Version:</strong> 1.0.0
74
+ <strong>Generated:</strong> 2026-03-23T18:22:33.405Z</p><h2>Table of Contents</h2><ul><li><a href="#overview">Overview</a></li>
75
+ <li><a href="#models">Models</a></li>
76
+ - <a href="#product">Product</a></p><h2>Overview</h2><h3>Component Statistics</h3><p><tr><td>Component Type</td><td>Count</td></tr>
77
+
78
+ <tr><td>Models</td><td>1</td></tr>
79
+ <tr><td>Controllers</td><td>0</td></tr>
80
+ <tr><td>Services</td><td>0</td></tr>
81
+ <tr><td>Views</td><td>0</td></tr>
82
+ <tr><td>Events</td><td>0</td></tr></p><h3>Imports</h3><p>
83
+ <h3>Exports</h3><p><strong>SpecVerseFundamentals:</strong>
84
+ <li><strong>models:</strong> Product</li></ul><h2>Models</h2><h3>Product</h3><p>Simple product with basic attributes</p><h4>Attributes</h4><p><tr><td>Name</td><td>Type</td><td>Required</td><td>Unique</td><td>Description</td></tr>
85
+
86
+ <tr><td>id</td><td>UUID</td><td>✓</td></tr>
87
+ <tr><td>name</td><td>String</td><td>✓</td></tr>
88
+ <tr><td>summary</td><td>String</td></tr>
89
+ <tr><td>price</td><td>Money</td><td>✓</td></tr>
90
+ <tr><td>inStock</td><td>Boolean</td><td>Default: true</td></tr>
91
+ <tr><td>category</td><td>String</td><td>✓</td></tr>
92
+ <tr><td>contactEmail</td><td>Email</td></tr></p><h4>Behaviors</h4><h5>attachProfile</h5><p>Attach a profile to this model instance</p><p><strong>Parameters:</strong>
93
+ <li><code>profileName</code>: String (required)</li></ul><p><strong>Returns:</strong> Boolean</p><p><strong>Preconditions:</strong>
94
+ <li>Profile exists and is compatible with this model</li></ul><p><strong>Postconditions:</strong>
95
+ <li>Profile is attached</li>
96
+ <li>Profile attributes are available</li></ul><h5>detachProfile</h5><p>Detach a profile from this model instance</p><p><strong>Parameters:</strong>
97
+ <li><code>profileName</code>: String (required)</li></ul><p><strong>Returns:</strong> Boolean</p><p><strong>Preconditions:</strong>
98
+ <li>Profile is currently attached</li></ul><p><strong>Postconditions:</strong>
99
+ <li>Profile is detached</li>
100
+ <li>Profile attributes are no longer available</li></ul><h5>hasProfile</h5><p>Check if a profile is attached to this model instance</p><p><strong>Parameters:</strong>
101
+ <li><code>profileName</code>: String (required)</li></ul><p><strong>Returns:</strong> Boolean</p><p>---
102
+ </p>
103
+ </body>
104
+ </html>
@@ -0,0 +1,95 @@
1
+ # SpecVerseFundamentals
2
+
3
+ Example 01-01: Basic model definition with attributes
4
+
5
+ **Version:** 1.0.0
6
+ **Generated:** 2026-03-23T18:22:33.403Z
7
+
8
+ ## Table of Contents
9
+
10
+ - [Overview](#overview)
11
+ - [Models](#models)
12
+ - [Product](#product)
13
+
14
+ ## Overview
15
+
16
+ ### Component Statistics
17
+
18
+ | Component Type | Count |
19
+ |----------------|-------|
20
+ | Models | 1 |
21
+ | Controllers | 0 |
22
+ | Services | 0 |
23
+ | Views | 0 |
24
+ | Events | 0 |
25
+
26
+ ### Imports
27
+
28
+
29
+ ### Exports
30
+
31
+ **SpecVerseFundamentals:**
32
+ - **models:** Product
33
+
34
+ ## Models
35
+
36
+ ### Product
37
+
38
+ Simple product with basic attributes
39
+
40
+ #### Attributes
41
+
42
+ | Name | Type | Required | Unique | Description |
43
+ |------|------|----------|--------|-------------|
44
+ | id | UUID | ✓ | | |
45
+ | name | String | ✓ | | |
46
+ | summary | String | | | |
47
+ | price | Money | ✓ | | |
48
+ | inStock | Boolean | | | Default: true |
49
+ | category | String | ✓ | | |
50
+ | contactEmail | Email | | | |
51
+
52
+ #### Behaviors
53
+
54
+ ##### attachProfile
55
+
56
+ Attach a profile to this model instance
57
+
58
+ **Parameters:**
59
+ - `profileName`: String (required)
60
+
61
+ **Returns:** Boolean
62
+
63
+ **Preconditions:**
64
+ - Profile exists and is compatible with this model
65
+
66
+ **Postconditions:**
67
+ - Profile is attached
68
+ - Profile attributes are available
69
+
70
+ ##### detachProfile
71
+
72
+ Detach a profile from this model instance
73
+
74
+ **Parameters:**
75
+ - `profileName`: String (required)
76
+
77
+ **Returns:** Boolean
78
+
79
+ **Preconditions:**
80
+ - Profile is currently attached
81
+
82
+ **Postconditions:**
83
+ - Profile is detached
84
+ - Profile attributes are no longer available
85
+
86
+ ##### hasProfile
87
+
88
+ Check if a profile is attached to this model instance
89
+
90
+ **Parameters:**
91
+ - `profileName`: String (required)
92
+
93
+ **Returns:** Boolean
94
+
95
+ ---
@@ -0,0 +1,7 @@
1
+ name: GeneratedComponent
2
+ version: 3.1.0
3
+ controllers: {}
4
+ services: {}
5
+ events: {}
6
+ views: {}
7
+ models: {}
@@ -0,0 +1,89 @@
1
+ # API Integration Examples Metadata
2
+ category: "api"
3
+ title: "SpecVerse API Integration"
4
+ description: "Comprehensive examples for programmatic integration of SpecVerse in TypeScript and JavaScript applications"
5
+ targetAudience: "developers"
6
+ estimatedTime: "2-3 hours"
7
+
8
+ learningObjectives:
9
+ - "Master the SpecVerse programmatic API for parsing and validation"
10
+ - "Integrate AI inference engine into applications"
11
+ - "Generate UML diagrams and documentation programmatically"
12
+ - "Handle errors and edge cases in API integration"
13
+ - "Test and validate API integrations"
14
+
15
+ examples:
16
+ - id: "09-01-usage-example"
17
+ title: "Comprehensive API Usage"
18
+ description: "Complete workflow examples showing all SpecVerse API capabilities"
19
+ concepts: ["api", "parsing", "inference", "generation", "integration"]
20
+ prerequisites: ["basic-javascript", "nodejs"]
21
+ difficulty: "intermediate"
22
+ estimatedTime: "45 minutes"
23
+ formats: ["js", "ts"]
24
+ learningObjectives:
25
+ - "Parse and validate SpecVerse specifications programmatically"
26
+ - "Use AI inference engine to enhance specifications"
27
+ - "Generate UML diagrams and documentation"
28
+ - "Handle parsing and validation errors"
29
+ specverseFeatures: ["Parser API", "Inference Engine", "Generators", "Error Handling"]
30
+ realWorldUseCase: "Build tools, web applications, automated processing pipelines"
31
+
32
+ - id: "09-02-workflow-test"
33
+ title: "End-to-End API Testing"
34
+ description: "Focused workflow test for CI/CD and production validation"
35
+ concepts: ["testing", "ci-cd", "validation", "automation"]
36
+ prerequisites: ["api-basics"]
37
+ difficulty: "intermediate"
38
+ estimatedTime: "30 minutes"
39
+ formats: ["js"]
40
+ learningObjectives:
41
+ - "Create automated API tests for CI/CD pipelines"
42
+ - "Validate API functionality with embedded specifications"
43
+ - "Handle success/failure scenarios appropriately"
44
+ specverseFeatures: ["API Testing", "Validation", "CI/CD Integration"]
45
+ realWorldUseCase: "Automated testing, build pipelines, API health checks"
46
+
47
+ - id: "09-03-package-integration"
48
+ title: "Package Integration Testing"
49
+ description: "Validate complete npm package installation and API functionality"
50
+ concepts: ["npm", "package-testing", "integration", "real-world-usage"]
51
+ prerequisites: ["api-basics", "npm-knowledge"]
52
+ difficulty: "advanced"
53
+ estimatedTime: "45 minutes"
54
+ formats: ["js"]
55
+ learningObjectives:
56
+ - "Test complete package installation workflow"
57
+ - "Validate API functionality in real npm environment"
58
+ - "Ensure package integrity and completeness"
59
+ specverseFeatures: ["Package Distribution", "API Validation", "Integration Testing"]
60
+ realWorldUseCase: "Release validation, package testing, integration verification"
61
+
62
+ usagePatterns:
63
+ webApplications:
64
+ description: "Integration into React, Vue, Angular applications"
65
+ examples: ["React component generation", "Vue template processing", "Angular service integration"]
66
+
67
+ buildTools:
68
+ description: "webpack, vite, rollup plugin integration"
69
+ examples: ["Build-time specification processing", "Asset generation", "Plugin development"]
70
+
71
+ apiServices:
72
+ description: "Express, Fastify, Koa API endpoint integration"
73
+ examples: ["Specification validation endpoints", "API generation services", "Documentation APIs"]
74
+
75
+ cliTools:
76
+ description: "Custom CLI tool development"
77
+ examples: ["Custom specification processors", "Domain-specific tools", "Workflow automation"]
78
+
79
+ performanceConsiderations:
80
+ parsing: "Sub-5ms for typical specifications"
81
+ inference: "Optimized rule processing engine"
82
+ memory: "Efficient caching and resource management"
83
+ concurrency: "Thread-safe for concurrent processing"
84
+
85
+ nextSteps:
86
+ - "Integrate SpecVerse into your project using these patterns"
87
+ - "Customize examples for your specific use case"
88
+ - "Use workflow-test.js patterns for production validation"
89
+ - "Explore advanced inference engine configuration options"
@@ -0,0 +1,61 @@
1
+ {
2
+ "openapi": "3.0.3",
3
+ "info": {
4
+ "title": "SpecVerseFundamentals",
5
+ "description": "Example 01-01: Basic model definition with attributes",
6
+ "version": "1.0.0"
7
+ },
8
+ "servers": [
9
+ {
10
+ "url": "https://api.example.com"
11
+ }
12
+ ],
13
+ "paths": {},
14
+ "components": {
15
+ "schemas": {
16
+ "Product": {
17
+ "type": "object",
18
+ "description": "Simple product with basic attributes",
19
+ "properties": {
20
+ "id": {
21
+ "type": "string",
22
+ "description": ""
23
+ },
24
+ "name": {
25
+ "type": "string",
26
+ "description": ""
27
+ },
28
+ "summary": {
29
+ "type": "string",
30
+ "description": ""
31
+ },
32
+ "price": {
33
+ "type": "string",
34
+ "description": ""
35
+ },
36
+ "inStock": {
37
+ "type": "boolean",
38
+ "description": "Default: true",
39
+ "default": "true"
40
+ },
41
+ "category": {
42
+ "type": "string",
43
+ "description": ""
44
+ },
45
+ "contactEmail": {
46
+ "type": "string",
47
+ "description": ""
48
+ }
49
+ },
50
+ "required": [
51
+ "id",
52
+ "name",
53
+ "price",
54
+ "category"
55
+ ]
56
+ }
57
+ },
58
+ "responses": {},
59
+ "parameters": {}
60
+ }
61
+ }