@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,176 @@
1
+ # SpecVerse v3.3 Implementation Manifest
2
+ # Defines technology stack using implementation types and capability mappings
3
+
4
+ manifests:
5
+ {{projectNameKebab}}Implementation:
6
+ specVersion: "3.3.0"
7
+ name: "{{projectNameKebab}}-implementation"
8
+ version: "1.0.0"
9
+ description: "Development implementation manifest for {{projectName}}"
10
+
11
+ # v3.3: Deployment reference
12
+ deployment:
13
+ deploymentSource: "../specs/main.specly"
14
+ deploymentName: "development"
15
+
16
+ # v3.3: Default technology stack mappings
17
+ defaultMappings:
18
+ storage: "PostgreSQL15"
19
+ controller: "PrismaServices"
20
+ service: "PrismaServices"
21
+ routing: "FastifyAPI"
22
+ orm: "PrismaORM"
23
+ communication: "EventEmitter"
24
+
25
+ # v3.3: Map deployment instance capabilities to implementation types
26
+ capabilityMappings:
27
+ # API Layer - Fastify REST API (routing)
28
+ - capability: "api.rest"
29
+ instanceFactory: "FastifyAPI"
30
+
31
+ # Business Logic Layer - PrismaServices (controllers + services)
32
+ - capability: "service.controller"
33
+ instanceFactory: "PrismaServices"
34
+
35
+ - capability: "service.business"
36
+ instanceFactory: "PrismaServices"
37
+
38
+ - capability: "service.crud"
39
+ instanceFactory: "PrismaServices"
40
+
41
+ # Data Layer - PostgreSQL + Prisma
42
+ - capability: "storage.database"
43
+ instanceFactory: "PostgreSQL15"
44
+
45
+ # ORM - Prisma (schema + client)
46
+ - capability: "orm.schema"
47
+ instanceFactory: "PrismaORM"
48
+
49
+ - capability: "orm.client"
50
+ instanceFactory: "PrismaORM"
51
+
52
+ - capability: "orm.prisma"
53
+ instanceFactory: "PrismaORM"
54
+
55
+ # Events - In-memory for development
56
+ - capability: "messaging.pubsub"
57
+ instanceFactory: "EventEmitter"
58
+
59
+ - capability: "messaging.events"
60
+ instanceFactory: "EventEmitter"
61
+
62
+ # Validation - Zod
63
+ - capability: "validation.runtime"
64
+ instanceFactory: "ZodValidation"
65
+
66
+ - capability: "validation.schema"
67
+ instanceFactory: "ZodValidation"
68
+
69
+ # Project Scaffolding (generates package.json, tsconfig.json, etc.)
70
+ - capability: "project.scaffold"
71
+ instanceFactory: "GenericScaffold"
72
+
73
+ # Backend Application Entry Point (generates backend/src/main.ts)
74
+ - capability: "app.entrypoint"
75
+ instanceFactory: "GenericApp"
76
+
77
+ # Frontend Application (generates frontend/index.html, App.tsx, etc.)
78
+ - capability: "app.frontend"
79
+ instanceFactory: "ReactApp"
80
+
81
+ # UI Components - React (views and components)
82
+ - capability: "ui.components"
83
+ instanceFactory: "ReactComponents"
84
+
85
+ - capability: "ui.views"
86
+ instanceFactory: "ReactComponents"
87
+
88
+ - capability: "ui.forms"
89
+ instanceFactory: "ReactComponents"
90
+
91
+ # v3.3: Configuration section
92
+ configuration:
93
+ # Project structure
94
+ outputStructure: "monorepo"
95
+ frontendDir: "frontend"
96
+ backendDir: "backend"
97
+
98
+ # API connection (for frontend)
99
+ apiBaseUrl: "http://localhost:3000"
100
+ # Environment-specific settings
101
+ environments:
102
+ development:
103
+ database:
104
+ provider: "postgresql"
105
+ url: "postgresql://localhost:5432/{{projectNameKebab}}_dev"
106
+ server:
107
+ port: 3000
108
+ host: "localhost"
109
+ logLevel: "debug"
110
+ features:
111
+ hotReload: true
112
+ debugMode: true
113
+
114
+ test:
115
+ database:
116
+ provider: "postgresql"
117
+ url: "postgresql://localhost:5432/{{projectNameKebab}}_test"
118
+ server:
119
+ port: 3001
120
+ host: "localhost"
121
+ logLevel: "silent"
122
+
123
+ production:
124
+ database:
125
+ provider: "postgresql"
126
+ url: "${DATABASE_URL}"
127
+ server:
128
+ port: "${PORT:-8080}"
129
+ host: "0.0.0.0"
130
+ logLevel: "info"
131
+ middleware:
132
+ rateLimit:
133
+ max: 1000
134
+ timeWindow: "1 minute"
135
+ compression: true
136
+
137
+ # Authentication configuration
138
+ authentication:
139
+ enabled: true
140
+ provider: "jwt"
141
+ secret: "${JWT_SECRET}"
142
+ expiresIn: "7d"
143
+
144
+ # CORS configuration
145
+ cors:
146
+ origin: "*" # Change to specific domains in production
147
+ credentials: true
148
+ methods: ["GET", "POST", "PUT", "DELETE", "PATCH"]
149
+
150
+ # Validation configuration
151
+ validation:
152
+ enabled: true
153
+ provider: "zod"
154
+ stripUnknown: true
155
+ abortEarly: false
156
+
157
+ # Logging configuration
158
+ logging:
159
+ level: "info"
160
+ pretty: true
161
+ destinations:
162
+ - type: "console"
163
+ - type: "file"
164
+ path: "logs/{{projectNameKebab}}.log"
165
+
166
+ # Code generation options
167
+ generation:
168
+ outputDir: "./generated/code"
169
+ typescript: true
170
+ validation: true
171
+ tests: false
172
+ documentation: true
173
+ metadata:
174
+ idStrategy: "uuid"
175
+ auditFields: true
176
+ softDeleteStrategy: "deletedAt"
@@ -0,0 +1,140 @@
1
+ # Kubernetes Implementation Manifest
2
+ # SpecVerse v3.3 manifest specification for Kubernetes deployment
3
+
4
+ manifests:
5
+ KubernetesManifest:
6
+ specVersion: "3.3.0"
7
+ name: "{{componentName}}KubernetesManifest"
8
+ version: "1.0.0"
9
+ description: "Kubernetes implementation manifest for {{projectName}}"
10
+
11
+ # v3.3: Deployment reference (REQUIRED)
12
+ deployment:
13
+ deploymentSource: "./specs/main.specly"
14
+ deploymentName: "production"
15
+
16
+ # v3.3: Default technology mappings
17
+ defaultMappings:
18
+ storage: "PostgreSQL15"
19
+ controller: "KubernetesApp"
20
+
21
+ # v3.3: Capability to implementation factory mappings
22
+ capabilityMappings:
23
+ - capability: "api.*"
24
+ instanceFactory: "KubernetesController"
25
+
26
+ - capability: "database.*"
27
+ instanceFactory: "KubernetesDatabase"
28
+
29
+ - capability: "networking.*"
30
+ instanceFactory: "KubernetesService"
31
+
32
+ # v3.3: Instance-specific mappings (optional - for fine-grained control)
33
+ instanceMappings:
34
+ - instanceName: "webApp"
35
+ instanceFactory: "KubernetesController"
36
+
37
+ - instanceName: "appDatabase"
38
+ instanceFactory: "KubernetesDatabase"
39
+
40
+ - instanceName: "webService"
41
+ instanceFactory: "KubernetesService"
42
+
43
+ # v3.3: Platform-specific configuration
44
+ configuration:
45
+ # Kubernetes specific settings
46
+ clusterVersion: "v1.28"
47
+
48
+ # Implementation factory definitions
49
+ implementationFactories:
50
+ KubernetesController:
51
+ type: "controller"
52
+ technology: "kubernetes"
53
+ framework: "deployment"
54
+ config:
55
+ apiVersion: "apps/v1"
56
+ kind: "Deployment"
57
+ replicas: 3
58
+ image: "{{projectNameKebab}}:latest"
59
+ containerPort: 3000
60
+ resources:
61
+ requests:
62
+ memory: "128Mi"
63
+ cpu: "100m"
64
+ limits:
65
+ memory: "256Mi"
66
+ cpu: "200m"
67
+
68
+ KubernetesDatabase:
69
+ type: "database"
70
+ technology: "postgresql"
71
+ framework: "kubernetes-operator"
72
+ config:
73
+ apiVersion: "postgresql.cnpg.io/v1"
74
+ kind: "Cluster"
75
+ instances: 3
76
+ postgresql:
77
+ parameters:
78
+ max_connections: "100"
79
+ shared_buffers: "128MB"
80
+ storage:
81
+ size: "10Gi"
82
+ storageClass: "fast-ssd"
83
+
84
+ KubernetesService:
85
+ type: "service"
86
+ technology: "kubernetes"
87
+ framework: "service"
88
+ config:
89
+ apiVersion: "v1"
90
+ kind: "Service"
91
+ serviceType: "ClusterIP"
92
+ ports:
93
+ - port: 80
94
+ targetPort: 3000
95
+ protocol: "TCP"
96
+
97
+ # Horizontal Pod Autoscaling
98
+ scaling:
99
+ horizontal:
100
+ enabled: true
101
+ minReplicas: 3
102
+ maxReplicas: 10
103
+ targetCPUUtilization: 70
104
+
105
+ # Monitoring configuration
106
+ monitoring:
107
+ prometheus: true
108
+ grafana: true
109
+ alerts:
110
+ - name: "high-cpu"
111
+ threshold: "80%"
112
+ - name: "high-memory"
113
+ threshold: "85%"
114
+
115
+ # Namespace configuration
116
+ namespace:
117
+ strategy: "environment-based"
118
+ name: "{{projectNameKebab}}"
119
+ description: "Production application namespace"
120
+ isolation: "strict"
121
+ resourceLimits:
122
+ cpu: "2"
123
+ memory: "4Gi"
124
+ storage: "50Gi"
125
+ securityPolicy: "restricted"
126
+
127
+ # AI implementation instructions
128
+ aiInstructions: |
129
+ When implementing this Kubernetes deployment:
130
+
131
+ 1. **Production Ready**: Configured for production with multiple replicas
132
+ 2. **Resource Management**: CPU and memory limits defined
133
+ 3. **Horizontal Scaling**: HPA configured for automatic scaling
134
+ 4. **Database**: PostgreSQL with operator for high availability
135
+ 5. **Networking**: ClusterIP service for internal communication
136
+ 6. **Security**: Restricted security policy and namespace isolation
137
+ 7. **Monitoring**: Prometheus and Grafana integration
138
+ 8. **Storage**: Persistent volumes for database data
139
+ 9. **Health Checks**: Configure readiness and liveness probes
140
+ 10. **Secrets**: Use Kubernetes secrets for sensitive data
@@ -0,0 +1,61 @@
1
+ {
2
+ "name": "{{projectNameKebab}}",
3
+ "version": "0.1.0",
4
+ "description": "{{projectName}} - SpecVerse Project",
5
+ "scripts": {
6
+ "_comment_workflow": "=== Main Workflow ===",
7
+ "genAll": "npm run realize:all && echo '\n✅ Code generation complete!\n' && echo '📦 Installing dependencies...\n' && cd generated/code && npm install && echo '\n🗄️ Setting up database...\n' && npm run db:setup && echo '\n✅ Setup complete! Next steps:\n' && echo ' npm run app:build # Build the project' && echo ' npm run app:test # Run tests' && echo ' npm run app:start # Start production server' && echo ' npm run app:dev:backend # Start backend dev server' && echo ' npm run app:dev:frontend # Start frontend dev server\n'",
8
+ "app:build": "if [ -d generated/code ]; then cd generated/code && npm run build; else echo '❌ No generated code found. Run: npm run genAll'; exit 1; fi",
9
+ "app:test": "if [ -d generated/code ]; then cd generated/code && npm test; else echo '❌ No generated code found. Run: npm run genAll'; exit 1; fi",
10
+ "app:start": "if [ -d generated/code ]; then cd generated/code && npm start; else echo '❌ No generated code found. Run: npm run genAll'; exit 1; fi",
11
+ "app:dev": "echo '⚠️ Development mode requires 2 separate terminals:' && echo '' && echo ' Terminal 1: cd generated/code && npm run dev:backend' && echo ' Terminal 2: cd generated/code && npm run dev:frontend' && echo '' && echo 'Or use the shortcut commands:' && echo ' npm run app:dev:backend' && echo ' npm run app:dev:frontend'",
12
+ "app:dev:backend": "if [ -d generated/code ]; then cd generated/code && npm run dev:backend; else echo '❌ No generated code found. Run: npm run genAll'; exit 1; fi",
13
+ "app:dev:frontend": "if [ -d generated/code ]; then cd generated/code && npm run dev:frontend; else echo '❌ No generated code found. Run: npm run genAll'; exit 1; fi",
14
+
15
+ "_comment_validation": "=== Validation ===",
16
+ "validate": "specverse validate specs/main.specly",
17
+ "validate:all": "npm run validate && npm run validate:manifests",
18
+ "validate:manifests": "specverse validate manifests/docker-compose.specly && specverse validate manifests/kubernetes.specly",
19
+
20
+ "_comment_inference": "=== AI Inference ===",
21
+ "infer": "specverse infer specs/main.specly -o generated/{{projectNameKebab}}-complete.specly",
22
+ "infer:deployment": "specverse infer specs/main.specly --deployment --environment development -o generated/{{projectNameKebab}}-deployed.specly",
23
+ "infer:deployment:prod": "specverse infer specs/main.specly --deployment --environment production -o generated/{{projectNameKebab}}-deployed-prod.specly",
24
+
25
+ "_comment_generation": "=== Generation ===",
26
+ "generate:docs": "specverse gen docs specs/main.specly --output docs/main-docs.md",
27
+ "generate:diagrams": "specverse gen diagram specs/main.specly --output docs/diagrams",
28
+ "generate:diagram:er": "specverse gen diagram specs/main.specly -t er-diagram -o docs/diagrams/er-diagram.mmd",
29
+ "generate:diagram:event-flow": "specverse gen diagram specs/main.specly -t event-flow-layered -o docs/diagrams/event-flow-layered.mmd",
30
+ "generate:diagram:lifecycle": "specverse gen diagram specs/main.specly -t lifecycle -o docs/diagrams/lifecycle.mmd",
31
+ "generate:diagram:deployment": "specverse gen diagram specs/main.specly -t deployment-topology -o docs/diagrams/deployment.mmd",
32
+ "generate:diagram:architecture": "specverse gen diagram specs/main.specly -t model-architecture -o docs/diagrams/architecture.mmd",
33
+ "generate:complete": "npm run infer && npm run infer:docs",
34
+
35
+ "_comment_inference_docs": "=== Inference Documentation ===",
36
+ "infer:docs": "specverse gen docs generated/{{projectNameKebab}}-complete.specly --output generated/docs/complete-docs.md && specverse gen diagram generated/{{projectNameKebab}}-complete.specly --output generated/docs/complete-diagrams",
37
+ "infer:deployment:docs": "specverse gen docs generated/{{projectNameKebab}}-deployed.specly --output generated/docs/deployed-docs.md && specverse gen diagram generated/{{projectNameKebab}}-deployed.specly --output generated/docs/deployed-diagrams",
38
+ "infer:deployment:prod:docs": "specverse gen docs generated/{{projectNameKebab}}-deployed-prod.specly --output generated/docs/deployed-prod-docs.md && specverse gen diagram generated/{{projectNameKebab}}-deployed-prod.specly --output generated/docs/deployed-prod-diagrams",
39
+
40
+ "_comment_realization": "=== Code Realization (v3.3) ===",
41
+ "realize:orm": "specverse realize orm specs/main.specly -m manifests/implementation.yaml",
42
+ "realize:services": "specverse realize services specs/main.specly -m manifests/implementation.yaml",
43
+ "realize:routes": "specverse realize routes specs/main.specly -m manifests/implementation.yaml",
44
+ "realize:all": "specverse realize all specs/main.specly -m manifests/implementation.yaml -o generated/code",
45
+
46
+ "_comment_utilities": "=== Utilities ===",
47
+ "process": "specverse gen yaml specs/main.specly -o generated/{{projectNameKebab}}-processed.yaml",
48
+ "format": "specverse dev format specs/main.specly --write",
49
+
50
+ "_comment_testing": "=== Testing ===",
51
+ "test:all": "./scripts/test-all.sh",
52
+ "test:generated:compile": "cd generated/code && npx tsc --noEmit --skipLibCheck 2>&1 || echo 'TypeScript compilation check (some errors expected without npm install)'",
53
+ "test:generated:run": "cd generated/code && npm install && npm run db:generate && echo 'Generated code is ready to run with: npm run dev'"
54
+ },
55
+ "keywords": ["specverse", "specification", "ai", "inference"],
56
+ "devDependencies": {
57
+ },
58
+ "engines": {
59
+ "node": ">=18.0.0"
60
+ }
61
+ }
@@ -0,0 +1,160 @@
1
+ #!/bin/bash
2
+
3
+ # SpecVerse Comprehensive Test Script
4
+ # Tests all commands and validates generated specifications
5
+
6
+ set -e # Exit on any error
7
+
8
+ echo "🚀 Starting comprehensive SpecVerse test..."
9
+
10
+ # Create necessary directories
11
+ mkdir -p generated docs/diagrams generated/docs generated/code
12
+
13
+ # Step 1: Validate original specification
14
+ echo "📋 Step 1: Validating original specification..."
15
+ npm run validate
16
+
17
+ # Step 2: Generate complete specification and validate it
18
+ echo "🧠 Step 2: Generating and validating complete specification..."
19
+ npm run infer
20
+ specverse validate generated/{{projectNameKebab}}-complete.specly
21
+
22
+ # Step 3: Generate development deployment and validate it
23
+ echo "🏗️ Step 3: Generating and validating development deployment..."
24
+ npm run infer:deployment
25
+ specverse validate generated/{{projectNameKebab}}-deployed.specly
26
+
27
+ # Step 4: Generate production deployment and validate it
28
+ echo "🏭 Step 4: Generating and validating production deployment..."
29
+ npm run infer:deployment:prod
30
+ specverse validate generated/{{projectNameKebab}}-deployed-prod.specly
31
+
32
+ # Step 5: Generate documentation and diagrams for original spec
33
+ echo "📚 Step 5: Generating docs and diagrams for original specification..."
34
+ npm run generate:docs
35
+ npm run generate:diagrams
36
+
37
+ # Step 6: Generate documentation for all inferred specifications
38
+ echo "📖 Step 6: Generating docs for all inferred specifications..."
39
+ npm run infer:docs
40
+ npm run infer:deployment:docs
41
+ npm run infer:deployment:prod:docs
42
+
43
+ # Step 7: Test YAML processing
44
+ echo "⚙️ Step 7: Testing YAML processing..."
45
+ npm run process
46
+
47
+ # Step 8: Test v3.3 Code Realization (NEW)
48
+ echo "🔧 Step 8: Testing v3.3 code realization..."
49
+ echo " → Generating complete runnable project..."
50
+ npm run realize:all
51
+
52
+ # Verify generated project structure
53
+ echo " → Verifying generated project..."
54
+ if [ -f "generated/code/package.json" ]; then
55
+ echo " ✅ package.json generated"
56
+ fi
57
+
58
+ if [ -f "generated/code/tsconfig.json" ]; then
59
+ echo " ✅ tsconfig.json generated"
60
+ fi
61
+
62
+ if [ -f "generated/code/.env.example" ]; then
63
+ echo " ✅ .env.example generated"
64
+ fi
65
+
66
+ if [ -f "generated/code/README.md" ]; then
67
+ echo " ✅ README.md generated"
68
+ fi
69
+
70
+ # Check for backend structure
71
+ if [ -d "generated/code/backend" ]; then
72
+ echo " ✅ Backend directory generated"
73
+
74
+ if [ -f "generated/code/backend/src/main.ts" ]; then
75
+ echo " ✅ Backend entry point (backend/src/main.ts) generated"
76
+ fi
77
+
78
+ # Check for ORM schema (Prisma for default template)
79
+ if [ -f "generated/code/backend/prisma/schema.prisma" ]; then
80
+ echo " ✅ Prisma ORM schema generated"
81
+ elif [ -d "generated/code/backend/src/entities" ] || [ -d "generated/code/backend/src/models" ]; then
82
+ echo " ✅ ORM schema generated"
83
+ fi
84
+
85
+ if [ -d "generated/code/backend/src/controllers" ]; then
86
+ echo " ✅ Controllers generated"
87
+ fi
88
+
89
+ if [ -d "generated/code/backend/src/routes" ]; then
90
+ echo " ✅ Route handlers generated"
91
+ fi
92
+ fi
93
+
94
+ # Check for frontend structure
95
+ if [ -d "generated/code/frontend" ]; then
96
+ echo " ✅ Frontend directory generated"
97
+
98
+ if [ -f "generated/code/frontend/src/main.tsx" ]; then
99
+ echo " ✅ Frontend entry point (frontend/src/main.tsx) generated"
100
+ fi
101
+
102
+ if [ -d "generated/code/frontend/src/components" ]; then
103
+ echo " ✅ React components generated"
104
+ fi
105
+ fi
106
+
107
+ # Check for v3.3 CURVED features in generated code
108
+ if [ -d "generated/code/backend/src/controllers" ]; then
109
+ # Check for unified validation method (v3.3)
110
+ if grep -q "validate(.*context.*operation" generated/code/backend/src/controllers/*.ts 2>/dev/null; then
111
+ echo " ✅ v3.3 unified validation method present"
112
+ fi
113
+
114
+ # Check for delete operation (not destroy)
115
+ if grep -q "async delete(id:" generated/code/backend/src/controllers/*.ts 2>/dev/null; then
116
+ echo " ✅ v3.3 delete operation present (CURVED)"
117
+ fi
118
+
119
+ # Check for retrieveAll method (list operation)
120
+ if grep -q "async retrieveAll" generated/code/backend/src/controllers/*.ts 2>/dev/null; then
121
+ echo " ✅ v3.3 retrieveAll method present (CURVED)"
122
+ fi
123
+ fi
124
+
125
+ # Check for validate endpoint in routes
126
+ if [ -d "generated/code/backend/src/routes" ]; then
127
+ if grep -q "'/validate'" generated/code/backend/src/routes/*.ts 2>/dev/null; then
128
+ echo " ✅ v3.3 validate endpoint present (CURVED)"
129
+ fi
130
+ fi
131
+
132
+ echo ""
133
+ echo "✅ All SpecVerse commands tested successfully!"
134
+ echo "✅ All generated specifications are valid and documented."
135
+ echo ""
136
+ echo "📊 Test Summary:"
137
+ echo " - Original specification: validated"
138
+ echo " - Complete specification: generated and validated"
139
+ echo " - Development deployment: generated and validated"
140
+ echo " - Production deployment: generated and validated"
141
+ echo " - Documentation: generated for all specifications"
142
+ echo " - Diagrams: generated for all specifications"
143
+ echo " - YAML processing: tested"
144
+ echo " - v3.3 Code realization: tested"
145
+ echo " - Complete runnable project: generated"
146
+ echo ""
147
+ echo "🎉 SpecVerse workflow is fully functional!"
148
+ echo ""
149
+ echo "💡 Next steps:"
150
+ echo " To run the generated full-stack application:"
151
+ echo " 1. cd /path/to/project (if not already there)"
152
+ echo " 2. npm run genAll (if not already run - installs deps and sets up DB)"
153
+ echo " 3. npm run app:build (build TypeScript)"
154
+ echo " 4. npm run app:dev:backend (Terminal 1 - starts backend on :3000)"
155
+ echo " 5. npm run app:dev:frontend (Terminal 2 - starts frontend on :5173)"
156
+ echo ""
157
+ echo " Or run 'npm run app:dev' to see detailed instructions"
158
+ echo ""
159
+ echo " Backend API: http://localhost:3000/api/{{componentNameKebab}}s"
160
+ echo " Frontend UI: http://localhost:5173"