@bluefly/openstandardagents 0.2.4 → 0.2.7

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 (511) hide show
  1. package/.cursorrules +84 -0
  2. package/.devfile.yaml +87 -0
  3. package/.env.example +25 -3
  4. package/.github/ISSUE_TEMPLATE/bug_report.yml +63 -0
  5. package/.github/ISSUE_TEMPLATE/feature_request.yml +40 -0
  6. package/.github/workflows/dependabot-comment.yml +34 -0
  7. package/.github/workflows/pr-comment.yml +33 -0
  8. package/.github/workflows/release.yml +1 -1
  9. package/.husky/pre-commit +5 -0
  10. package/.kiro/config.json +21 -0
  11. package/.kiro/settings/mcp.json +61 -0
  12. package/.kiro/specs/scripts-migration-api-first/design.md +883 -0
  13. package/.kiro/specs/scripts-migration-api-first/requirements.md +165 -0
  14. package/.kiro/specs/scripts-migration-api-first/tasks.md +539 -0
  15. package/.kiro/specs/website-brand-identity/design.md +1060 -0
  16. package/.kiro/specs/website-brand-identity/requirements.md +287 -0
  17. package/.kiro/specs/website-brand-identity/tasks.md +981 -0
  18. package/.releaserc.json +5 -4
  19. package/.version.json +6 -0
  20. package/CHANGELOG.md +163 -96
  21. package/CONTRIBUTING.md +23 -5
  22. package/README.md +130 -43
  23. package/bin/ossa +24 -3
  24. package/bin/ossa-dev +42 -0
  25. package/bin/ossa-export +32 -0
  26. package/bin/ossa-generate +60 -0
  27. package/bin/ossa-health +40 -0
  28. package/bin/ossa-init +26 -0
  29. package/bin/ossa-validate-all +55 -0
  30. package/bin/ossa-version +23 -0
  31. package/bin/validate-ossa-0.2.4.ts +244 -0
  32. package/bin/validate-ossa-0.2.5-RC.ts +244 -0
  33. package/bin/validate-ossa.ts +273 -0
  34. package/dist/di-container.d.ts +1 -1
  35. package/dist/di-container.d.ts.map +1 -1
  36. package/dist/di-container.js.map +1 -1
  37. package/dist/repositories/schema.repository.d.ts +17 -2
  38. package/dist/repositories/schema.repository.d.ts.map +1 -1
  39. package/dist/repositories/schema.repository.js +102 -19
  40. package/dist/repositories/schema.repository.js.map +1 -1
  41. package/dist/services/generation.service.d.ts +7 -5
  42. package/dist/services/generation.service.d.ts.map +1 -1
  43. package/dist/services/generation.service.js +92 -44
  44. package/dist/services/generation.service.js.map +1 -1
  45. package/dist/services/github-sync/github-client.d.ts +14 -0
  46. package/dist/services/github-sync/github-client.d.ts.map +1 -0
  47. package/dist/services/github-sync/github-client.js +41 -0
  48. package/dist/services/github-sync/github-client.js.map +1 -0
  49. package/dist/services/github-sync/gitlab-client.d.ts +17 -0
  50. package/dist/services/github-sync/gitlab-client.d.ts.map +1 -0
  51. package/dist/services/github-sync/gitlab-client.js +42 -0
  52. package/dist/services/github-sync/gitlab-client.js.map +1 -0
  53. package/dist/services/github-sync/schemas.d.ts +46 -0
  54. package/dist/services/github-sync/schemas.d.ts.map +1 -0
  55. package/dist/services/github-sync/schemas.js +36 -0
  56. package/dist/services/github-sync/schemas.js.map +1 -0
  57. package/dist/services/github-sync/sync.service.d.ts +27 -0
  58. package/dist/services/github-sync/sync.service.d.ts.map +1 -0
  59. package/dist/services/github-sync/sync.service.js +99 -0
  60. package/dist/services/github-sync/sync.service.js.map +1 -0
  61. package/dist/services/gitlab-agent.service.d.ts +94 -0
  62. package/dist/services/gitlab-agent.service.d.ts.map +1 -0
  63. package/dist/services/gitlab-agent.service.js +162 -0
  64. package/dist/services/gitlab-agent.service.js.map +1 -0
  65. package/dist/services/migration.service.d.ts +3 -3
  66. package/dist/services/migration.service.d.ts.map +1 -1
  67. package/dist/services/migration.service.js +108 -61
  68. package/dist/services/migration.service.js.map +1 -1
  69. package/dist/services/release-automation/base-crud.service.d.ts +93 -0
  70. package/dist/services/release-automation/base-crud.service.d.ts.map +1 -0
  71. package/dist/services/release-automation/base-crud.service.js +68 -0
  72. package/dist/services/release-automation/base-crud.service.js.map +1 -0
  73. package/dist/services/release-automation/index.d.ts +12 -0
  74. package/dist/services/release-automation/index.d.ts.map +1 -0
  75. package/dist/services/release-automation/index.js +12 -0
  76. package/dist/services/release-automation/index.js.map +1 -0
  77. package/dist/services/release-automation/merge-request.service.d.ts +119 -0
  78. package/dist/services/release-automation/merge-request.service.d.ts.map +1 -0
  79. package/dist/services/release-automation/merge-request.service.js +212 -0
  80. package/dist/services/release-automation/merge-request.service.js.map +1 -0
  81. package/dist/services/release-automation/milestone.service.d.ts +104 -0
  82. package/dist/services/release-automation/milestone.service.d.ts.map +1 -0
  83. package/dist/services/release-automation/milestone.service.js +207 -0
  84. package/dist/services/release-automation/milestone.service.js.map +1 -0
  85. package/dist/services/release-automation/release.service.d.ts +118 -0
  86. package/dist/services/release-automation/release.service.d.ts.map +1 -0
  87. package/dist/services/release-automation/release.service.js +207 -0
  88. package/dist/services/release-automation/release.service.js.map +1 -0
  89. package/dist/services/release-automation/schemas/release.schema.d.ts +299 -0
  90. package/dist/services/release-automation/schemas/release.schema.d.ts.map +1 -0
  91. package/dist/services/release-automation/schemas/release.schema.js +269 -0
  92. package/dist/services/release-automation/schemas/release.schema.js.map +1 -0
  93. package/dist/services/release-automation/tag.service.d.ts +99 -0
  94. package/dist/services/release-automation/tag.service.d.ts.map +1 -0
  95. package/dist/services/release-automation/tag.service.js +180 -0
  96. package/dist/services/release-automation/tag.service.js.map +1 -0
  97. package/dist/services/release-automation/webhook.service.d.ts +37 -0
  98. package/dist/services/release-automation/webhook.service.d.ts.map +1 -0
  99. package/dist/services/release-automation/webhook.service.js +173 -0
  100. package/dist/services/release-automation/webhook.service.js.map +1 -0
  101. package/dist/services/runtime/claude/capability-mapper.d.ts +84 -0
  102. package/dist/services/runtime/claude/capability-mapper.d.ts.map +1 -0
  103. package/dist/services/runtime/claude/capability-mapper.js +245 -0
  104. package/dist/services/runtime/claude/capability-mapper.js.map +1 -0
  105. package/dist/services/runtime/claude/claude-adapter.d.ts +80 -0
  106. package/dist/services/runtime/claude/claude-adapter.d.ts.map +1 -0
  107. package/dist/services/runtime/claude/claude-adapter.js +287 -0
  108. package/dist/services/runtime/claude/claude-adapter.js.map +1 -0
  109. package/dist/services/runtime/claude/manifest-parser.d.ts +77 -0
  110. package/dist/services/runtime/claude/manifest-parser.d.ts.map +1 -0
  111. package/dist/services/runtime/claude/manifest-parser.js +169 -0
  112. package/dist/services/runtime/claude/manifest-parser.js.map +1 -0
  113. package/dist/services/runtime/claude/types.d.ts +115 -0
  114. package/dist/services/runtime/claude/types.d.ts.map +1 -0
  115. package/dist/services/runtime/claude/types.js +6 -0
  116. package/dist/services/runtime/claude/types.js.map +1 -0
  117. package/dist/services/runtime/openai.adapter.d.ts.map +1 -1
  118. package/dist/services/runtime/openai.adapter.js.map +1 -1
  119. package/dist/services/validation.service.d.ts.map +1 -1
  120. package/dist/services/validation.service.js +35 -11
  121. package/dist/services/validation.service.js.map +1 -1
  122. package/dist/services/validators/anthropic.validator.d.ts +2 -2
  123. package/dist/services/validators/anthropic.validator.d.ts.map +1 -1
  124. package/dist/services/validators/anthropic.validator.js +14 -9
  125. package/dist/services/validators/anthropic.validator.js.map +1 -1
  126. package/dist/services/validators/autogen.validator.d.ts +2 -2
  127. package/dist/services/validators/autogen.validator.d.ts.map +1 -1
  128. package/dist/services/validators/autogen.validator.js +18 -15
  129. package/dist/services/validators/autogen.validator.js.map +1 -1
  130. package/dist/services/validators/crewai.validator.d.ts +2 -2
  131. package/dist/services/validators/crewai.validator.d.ts.map +1 -1
  132. package/dist/services/validators/crewai.validator.js +18 -17
  133. package/dist/services/validators/crewai.validator.js.map +1 -1
  134. package/dist/services/validators/cursor.validator.d.ts +2 -2
  135. package/dist/services/validators/cursor.validator.d.ts.map +1 -1
  136. package/dist/services/validators/cursor.validator.js +15 -11
  137. package/dist/services/validators/cursor.validator.js.map +1 -1
  138. package/dist/services/validators/langchain.validator.d.ts +2 -2
  139. package/dist/services/validators/langchain.validator.d.ts.map +1 -1
  140. package/dist/services/validators/langchain.validator.js +14 -11
  141. package/dist/services/validators/langchain.validator.js.map +1 -1
  142. package/dist/services/validators/langflow.validator.d.ts +2 -2
  143. package/dist/services/validators/langflow.validator.d.ts.map +1 -1
  144. package/dist/services/validators/langflow.validator.js +14 -9
  145. package/dist/services/validators/langflow.validator.js.map +1 -1
  146. package/dist/services/validators/langgraph.validator.d.ts +2 -2
  147. package/dist/services/validators/langgraph.validator.d.ts.map +1 -1
  148. package/dist/services/validators/langgraph.validator.js +23 -18
  149. package/dist/services/validators/langgraph.validator.js.map +1 -1
  150. package/dist/services/validators/llamaindex.validator.d.ts +2 -2
  151. package/dist/services/validators/llamaindex.validator.d.ts.map +1 -1
  152. package/dist/services/validators/llamaindex.validator.js +19 -16
  153. package/dist/services/validators/llamaindex.validator.js.map +1 -1
  154. package/dist/services/validators/openai.validator.d.ts +2 -2
  155. package/dist/services/validators/openai.validator.d.ts.map +1 -1
  156. package/dist/services/validators/openai.validator.js +20 -16
  157. package/dist/services/validators/openai.validator.js.map +1 -1
  158. package/dist/services/validators/vercel-ai.validator.d.ts +2 -2
  159. package/dist/services/validators/vercel-ai.validator.d.ts.map +1 -1
  160. package/dist/services/validators/vercel-ai.validator.js +16 -15
  161. package/dist/services/validators/vercel-ai.validator.js.map +1 -1
  162. package/dist/spec/v0.2.0/ossa-0.2.0.schema.json +0 -0
  163. package/dist/spec/v0.2.1/ossa-0.2.1.schema.json +555 -0
  164. package/dist/spec/v0.2.3/CHANGELOG.md +7 -7
  165. package/dist/spec/v0.2.3/README.md +9 -9
  166. package/dist/spec/v0.2.3/migrations/v0.2.2-to-v0.2.3.md +18 -18
  167. package/{spec/v0.2.4-dev → dist/spec/v0.2.4}/CHANGELOG.md +8 -8
  168. package/dist/spec/{v0.2.4-dev → v0.2.4}/migrations/v0.2.3-to-v0.2.4.md +10 -10
  169. package/dist/spec/{v0.2.4-dev/ossa-0.2.4-dev.yaml → v0.2.4/ossa-0.2.4.yaml} +1 -1
  170. package/dist/spec/v0.2.5/CHANGELOG.md +401 -0
  171. package/dist/spec/v0.2.5/README.md +72 -0
  172. package/dist/spec/v0.2.5/migrations/v0.2.3-to-v0.2.4.md +599 -0
  173. package/dist/spec/v0.2.5/ossa-0.2.5.schema.json +1696 -0
  174. package/dist/spec/v0.2.5/ossa-0.2.5.yaml +581 -0
  175. package/dist/spec/v0.2.5-RC/CHANGELOG.md +401 -0
  176. package/dist/spec/v0.2.5-RC/README.md +72 -0
  177. package/{spec/v0.2.4-dev → dist/spec/v0.2.5-RC}/migrations/v0.2.3-to-v0.2.4.md +10 -10
  178. package/dist/spec/v0.2.5-RC/ossa-0.2.5-RC.schema.json +1696 -0
  179. package/dist/spec/v0.2.5-RC/ossa-0.2.5-RC.yaml +581 -0
  180. package/dist/spec/v0.2.6/CHANGELOG.md +401 -0
  181. package/dist/spec/v0.2.6/README.md +72 -0
  182. package/dist/spec/v0.2.6/migrations/v0.2.3-to-v0.2.4.md +599 -0
  183. package/dist/spec/v0.2.6/migrations/v0.2.5-RC-to-v0.2.6.md +65 -0
  184. package/dist/spec/v0.2.6/ossa-0.2.6.schema.json +1786 -0
  185. package/dist/spec/v0.2.6/ossa-0.2.6.yaml +581 -0
  186. package/dist/spec/v0.2.6-dev/CHANGELOG.md +164 -0
  187. package/dist/spec/v0.2.6-dev/README.md +75 -0
  188. package/dist/spec/v0.2.6-dev/migrations/v0.2.2-to-v0.2.3.md +343 -0
  189. package/dist/spec/v0.2.6-dev/migrations/v0.2.3-to-v0.2.4.md +599 -0
  190. package/dist/spec/v0.2.6-dev/ossa-0.2.5.schema.json +1696 -0
  191. package/dist/spec/v0.2.6-dev/ossa-0.2.5.yaml +581 -0
  192. package/dist/spec/{v0.2.5-dev/ossa-0.2.5-dev.schema.json → v0.2.6-dev/ossa-0.2.6-dev.schema.json} +323 -359
  193. package/dist/spec/v0.2.6-dev/ossa-0.2.6-dev.yaml +448 -0
  194. package/dist/spec/v0.2.7/core/agentgraph.md +324 -0
  195. package/dist/spec/v0.2.7/resources/agentgraph.yaml +135 -0
  196. package/dist/types/index.d.ts +6 -1
  197. package/dist/types/index.d.ts.map +1 -1
  198. package/docs/brand-guide/01-brand-overview.md +37 -0
  199. package/docs/brand-guide/02-logo-usage.md +43 -0
  200. package/docs/brand-guide/03-color-palette.md +70 -0
  201. package/docs/brand-guide/04-typography.md +82 -0
  202. package/docs/brand-guide/05-voice-and-tone.md +108 -0
  203. package/docs/brand-guide/06-visual-elements.md +137 -0
  204. package/docs/brand-guide/07-application-examples.md +153 -0
  205. package/docs/brand-guide/OssaLogo/OssA_Logo.svg +21 -0
  206. package/docs/brand-guide/OssaLogo/brand.af +0 -0
  207. package/docs/brand-guide/README.md +107 -0
  208. package/docs/comparison.md +315 -0
  209. package/docs/operations/automation-roadmap.md +245 -0
  210. package/docs/operations/github-sync-strategy.md +357 -0
  211. package/examples/anthropic/claude-assistant.ossa.json +5 -4
  212. package/examples/autogen/multi-agent.ossa.json +6 -4
  213. package/examples/bridges/Dockerfile.production +1 -1
  214. package/examples/crewai/research-team.ossa.json +14 -5
  215. package/examples/cursor/code-review-agent.ossa.json +21 -6
  216. package/examples/enterprise/agent.yml +1 -1
  217. package/examples/getting-started/hello-world-complete.ossa.yaml +2 -2
  218. package/examples/integration-patterns/agent-to-agent-orchestration.ossa.yaml +4 -4
  219. package/examples/langchain/chain-agent.ossa.json +21 -5
  220. package/examples/langflow/workflow-agent.ossa.json +2 -3
  221. package/examples/langgraph/state-machine-agent.ossa.json +2 -3
  222. package/examples/llamaindex/rag-agent.ossa.json +2 -3
  223. package/examples/openai/basic-agent.ossa.yaml +61 -0
  224. package/examples/openai/multi-tool-agent.ossa.json +188 -0
  225. package/examples/openai/swarm-agent.ossa.json +18 -5
  226. package/examples/openapi-extensions/README.md +1 -1
  227. package/examples/quickstart/support-agent.ossa.yaml +1 -1
  228. package/examples/vercel/edge-agent.ossa.json +5 -4
  229. package/infrastructure/gitlab-agent/rbac.yaml +126 -0
  230. package/infrastructure/gitlab-agent/values.yaml +150 -0
  231. package/infrastructure/k8s/monitoring/00-namespace.yaml +7 -0
  232. package/infrastructure/k8s/monitoring/01-prometheus.yaml +142 -0
  233. package/infrastructure/k8s/monitoring/02-grafana.yaml +63 -0
  234. package/infrastructure/k8s/monitoring/03-lightweight.yaml +121 -0
  235. package/infrastructure/k8s/monitoring/README.md +73 -0
  236. package/infrastructure/k8s/monitoring/deploy.sh +38 -0
  237. package/openapi/CHANGELOG.md +21 -0
  238. package/openapi/README.md +46 -0
  239. package/openapi/{ossa-core-api.openapi.yaml → core/ossa-core-api.openapi.yaml} +59 -4
  240. package/openapi/{ossa-registry.openapi.yaml → core/ossa-registry.openapi.yaml} +75 -2
  241. package/openapi/{unified-agent-gateway.openapi.yaml → core/unified-agent-gateway.openapi.yaml} +3 -3
  242. package/openapi/github-sync.yaml +115 -0
  243. package/openapi/reference-implementations/aiflow-bridge-api.openapi.yaml +136 -0
  244. package/openapi/reference-implementations/compliance-agent-api.openapi.yaml +192 -0
  245. package/openapi/reference-implementations/crewai-agent-api.openapi.yaml +149 -0
  246. package/openapi/reference-implementations/critic-agent-api.openapi.yaml +151 -0
  247. package/openapi/reference-implementations/document-analyzer-api.openapi.yaml +217 -0
  248. package/openapi/reference-implementations/getting-started-hello-world-api.openapi.yaml +149 -0
  249. package/openapi/reference-implementations/gitlab-ml-recommender-api.openapi.yaml +151 -0
  250. package/openapi/reference-implementations/governor-agent-api.openapi.yaml +193 -0
  251. package/openapi/reference-implementations/integrator-agent-api.openapi.yaml +165 -0
  252. package/openapi/reference-implementations/judge-agent-api.openapi.yaml +148 -0
  253. package/openapi/reference-implementations/k8s-troubleshooter-api.openapi.yaml +167 -0
  254. package/openapi/reference-implementations/langchain-agent-api.openapi.yaml +171 -0
  255. package/openapi/reference-implementations/monitor-agent-api.openapi.yaml +171 -0
  256. package/openapi/reference-implementations/orchestrator-agent-api.openapi.yaml +242 -0
  257. package/openapi/reference-implementations/quickstart-support-agent-api.openapi.yaml +187 -0
  258. package/openapi/{self-evolving-ecosystem.openapi.yaml → reference-implementations/self-evolving-ecosystem.openapi.yaml} +2 -2
  259. package/openapi/reference-implementations/worker-agent-api.openapi.yaml +208 -0
  260. package/openapi/reference-implementations/workflow-orchestrator-api.openapi.yaml +193 -0
  261. package/package.json +53 -22
  262. package/release.config.js +20 -5
  263. package/scripts/README.md +103 -0
  264. package/scripts/auto-rebase-mrs.ts +106 -0
  265. package/scripts/batch-dependabot.sh +57 -0
  266. package/scripts/bump-version.ts +57 -0
  267. package/scripts/configure-gitlab-branch-protection.ts +95 -0
  268. package/scripts/create-issue-helper.ts +238 -0
  269. package/scripts/create-milestone-issue.ts +73 -0
  270. package/scripts/enhanced-version-manager.ts +257 -0
  271. package/scripts/fix-schema-formats.js +82 -0
  272. package/scripts/gen-types.ts +51 -0
  273. package/scripts/gen-zod.ts +51 -0
  274. package/scripts/generate-agents-catalog.ts +77 -0
  275. package/scripts/generate-api-docs.ts +218 -0
  276. package/scripts/generate-cli-docs.ts +410 -0
  277. package/scripts/generate-config-docs.ts +109 -0
  278. package/scripts/generate-errors-docs.ts +76 -0
  279. package/scripts/generate-examples-docs.ts +99 -0
  280. package/scripts/generate-schema-docs.ts +296 -0
  281. package/scripts/generate-types-docs.ts +48 -0
  282. package/scripts/lib/exec.ts +37 -0
  283. package/scripts/lib/file-ops.ts +58 -0
  284. package/scripts/lib/version.ts +83 -0
  285. package/scripts/lowercase-docs.ts +43 -0
  286. package/scripts/manage-milestone-mrs.ts +279 -0
  287. package/scripts/process-doc-templates.ts +37 -0
  288. package/scripts/rebase-all-mrs.sh +75 -0
  289. package/scripts/schemas/package.schema.ts +75 -0
  290. package/scripts/setup-branch-protection.sh +33 -0
  291. package/scripts/sync-github-pr.sh +48 -0
  292. package/scripts/sync-version.js +40 -0
  293. package/scripts/sync-version.ts +39 -0
  294. package/scripts/sync-versions.ts +488 -0
  295. package/scripts/sync-wiki.sh +50 -0
  296. package/scripts/validate-all.js +127 -0
  297. package/scripts/validate-schema.ts +49 -0
  298. package/spec/v0.2.0/ossa-0.2.0.schema.json +0 -0
  299. package/spec/v0.2.1/ossa-0.2.1.schema.json +555 -0
  300. package/spec/v0.2.3/CHANGELOG.md +7 -7
  301. package/spec/v0.2.3/README.md +9 -9
  302. package/spec/v0.2.3/migrations/v0.2.2-to-v0.2.3.md +18 -18
  303. package/{dist/spec/v0.2.4-dev → spec/v0.2.4}/CHANGELOG.md +8 -8
  304. package/spec/v0.2.4/migrations/v0.2.3-to-v0.2.4.md +599 -0
  305. package/spec/{v0.2.4-dev/ossa-0.2.4-dev.yaml → v0.2.4/ossa-0.2.4.yaml} +1 -1
  306. package/spec/v0.2.5/CHANGELOG.md +401 -0
  307. package/spec/v0.2.5/README.md +72 -0
  308. package/spec/v0.2.5/migrations/v0.2.3-to-v0.2.4.md +599 -0
  309. package/spec/v0.2.5/ossa-0.2.5.schema.json +1696 -0
  310. package/spec/v0.2.5/ossa-0.2.5.yaml +581 -0
  311. package/spec/v0.2.5-RC/CHANGELOG.md +401 -0
  312. package/spec/v0.2.5-RC/README.md +72 -0
  313. package/spec/v0.2.5-RC/migrations/v0.2.3-to-v0.2.4.md +599 -0
  314. package/spec/v0.2.5-RC/ossa-0.2.5-RC.schema.json +1696 -0
  315. package/spec/v0.2.5-RC/ossa-0.2.5-RC.yaml +581 -0
  316. package/spec/v0.2.6/CHANGELOG.md +401 -0
  317. package/spec/v0.2.6/README.md +72 -0
  318. package/spec/v0.2.6/migrations/v0.2.3-to-v0.2.4.md +599 -0
  319. package/spec/v0.2.6/migrations/v0.2.5-RC-to-v0.2.6.md +65 -0
  320. package/spec/v0.2.6/ossa-0.2.6.schema.json +1786 -0
  321. package/spec/v0.2.6/ossa-0.2.6.yaml +581 -0
  322. package/spec/v0.2.6-dev/CHANGELOG.md +164 -0
  323. package/spec/v0.2.6-dev/README.md +75 -0
  324. package/spec/v0.2.6-dev/migrations/v0.2.2-to-v0.2.3.md +343 -0
  325. package/spec/v0.2.6-dev/migrations/v0.2.3-to-v0.2.4.md +599 -0
  326. package/spec/v0.2.6-dev/ossa-0.2.5.schema.json +1696 -0
  327. package/spec/v0.2.6-dev/ossa-0.2.5.yaml +581 -0
  328. package/spec/{v0.2.5-dev/ossa-0.2.5-dev.schema.json → v0.2.6-dev/ossa-0.2.6-dev.schema.json} +323 -359
  329. package/spec/v0.2.6-dev/ossa-0.2.6-dev.yaml +448 -0
  330. package/spec/v0.2.7/core/agentgraph.md +324 -0
  331. package/spec/v0.2.7/resources/agentgraph.yaml +135 -0
  332. package/website/{.lighthouserc.js → .lighthouserc.ts} +5 -1
  333. package/website/DESIGN_SYSTEM_IMPLEMENTATION.md +445 -0
  334. package/website/Dockerfile +18 -5
  335. package/website/app/about/page.tsx +60 -51
  336. package/website/app/blog/[slug]/page.tsx +61 -20
  337. package/website/app/blog/page.tsx +120 -33
  338. package/website/app/design-guide/page.tsx +511 -0
  339. package/website/app/docs/[[...slug]]/page.tsx +641 -143
  340. package/website/app/ecosystem/page.tsx +146 -111
  341. package/website/app/examples/page.tsx +51 -41
  342. package/website/app/globals.scss +370 -0
  343. package/website/app/layout.tsx +2 -2
  344. package/website/app/license/page.tsx +183 -0
  345. package/website/app/not-found.tsx +18 -0
  346. package/website/app/page.tsx +513 -236
  347. package/website/app/page.tsx.bak +679 -0
  348. package/website/app/page.tsx.bak2 +649 -0
  349. package/website/app/playground/page.tsx +25 -45
  350. package/website/app/schema/page.tsx +423 -392
  351. package/website/app/specification/page.tsx +245 -169
  352. package/website/components/Logo.tsx +75 -2
  353. package/website/components/docs/DocsSidebar.tsx +40 -3
  354. package/website/components/docs/MarkdownContent.tsx +265 -47
  355. package/website/components/docs/VersionSelector.tsx +64 -8
  356. package/website/components/examples/ExamplesViewer.tsx +2 -2
  357. package/website/components/layout/Footer.tsx +6 -1
  358. package/website/components/layout/Header.tsx +44 -42
  359. package/website/components/schema/SchemaComponentsAccordion.tsx +84 -0
  360. package/website/components/schema/SchemaExplorer.tsx +4 -4
  361. package/website/components/ui/Badge.tsx +82 -0
  362. package/website/components/ui/Button.tsx +116 -0
  363. package/website/components/ui/Card.tsx +167 -0
  364. package/website/components/ui/Checkbox.tsx +141 -0
  365. package/website/components/ui/Input.tsx +169 -0
  366. package/website/components/ui/Radio.tsx +141 -0
  367. package/website/components/ui/Select.tsx +182 -0
  368. package/website/components/ui/Tag.tsx +158 -0
  369. package/website/components/ui/Textarea.tsx +195 -0
  370. package/website/components/ui/index.ts +11 -0
  371. package/website/content/blog/OpenAPI-AI-Agents-Standard.md +276 -276
  372. package/website/content/blog/Why-Formal-Standards-Matter-Now.md +3 -14
  373. package/website/content/blog/gitlab-kubernetes-agent-ecosystem.md +286 -0
  374. package/website/content/blog/introducing-ossa-framework.md +1 -1
  375. package/website/content/blog/ossa-production-results.md +5 -5
  376. package/website/content/blog/welcome-to-ossa.md +2 -2
  377. package/website/content/blog/why-ai-agents-need-open-standard.md +5 -5
  378. package/website/content/docs/{00-HOME.md → 00-home.md} +18 -25
  379. package/website/content/docs/adapters/openai-adapter.md +693 -0
  380. package/website/content/docs/agents/catalog.md +28 -0
  381. package/website/content/docs/aiflow-framework-integration-with-ossa.md +107 -0
  382. package/website/content/docs/api-reference/index.md +38 -0
  383. package/website/content/docs/api-reference/ossa-core-api.md +634 -0
  384. package/website/content/docs/api-reference/ossa-registry-api.md +515 -0
  385. package/website/content/docs/api-reference/unified-agent-gateway.md +599 -0
  386. package/website/content/docs/architecture/execution-flow.md +3 -3
  387. package/website/content/docs/architecture/multi-agent-systems.md +4 -4
  388. package/website/content/docs/architecture/overview.md +4 -4
  389. package/website/content/docs/architecture/stack-integration.md +4 -4
  390. package/website/content/docs/changelog.md +4 -4
  391. package/website/content/docs/cli-reference/index.md +111 -0
  392. package/website/content/docs/cli-reference/ossa-agents.md +70 -0
  393. package/website/content/docs/cli-reference/ossa-export.md +56 -0
  394. package/website/content/docs/cli-reference/ossa-generate.md +66 -0
  395. package/website/content/docs/cli-reference/ossa-gitlab-agent.md +57 -0
  396. package/website/content/docs/cli-reference/ossa-import.md +56 -0
  397. package/website/content/docs/cli-reference/ossa-init.md +57 -0
  398. package/website/content/docs/cli-reference/ossa-migrate.md +62 -0
  399. package/website/content/docs/cli-reference/ossa-run.md +66 -0
  400. package/website/content/docs/cli-reference/ossa-schema.md +57 -0
  401. package/website/content/docs/cli-reference/ossa-setup.md +57 -0
  402. package/website/content/docs/cli-reference/ossa-validate.md +66 -0
  403. package/website/content/docs/configuration/index.md +97 -0
  404. package/website/content/docs/contributing.md +2 -2
  405. package/website/content/docs/deployment/github-mirroring.md +924 -0
  406. package/website/content/docs/documentation.md +100 -0
  407. package/website/content/docs/ecosystem/framework-support.md +551 -11
  408. package/website/content/docs/errors/index.md +10 -0
  409. package/website/content/docs/{AIFlow-Framework-Integration-with-OSSA.md → examples/aiflow-framework-integration-with-ossa.md} +2 -2
  410. package/website/content/docs/examples/catalog.md +300 -0
  411. package/website/content/docs/for-audiences/{Students-Researchers.md → students-researchers.md} +1 -1
  412. package/website/content/docs/getting-started/index.md +92 -0
  413. package/website/content/docs/getting-started/installation.md +7 -7
  414. package/website/content/docs/getting-started/running-agents.md +215 -13
  415. package/{docs → website/content/docs}/getting-started.md +10 -6
  416. package/website/content/docs/integrations/aiflow.md +2 -2
  417. package/website/content/docs/integrations/drupal.md +2 -2
  418. package/website/content/docs/migration-guides/agent-schema-comparison.md +232 -0
  419. package/website/content/docs/migration-guides/anthropic-mcp-to-ossa.md +5 -5
  420. package/website/content/docs/migration-guides/crewai-to-ossa.md +3 -3
  421. package/website/content/docs/migration-guides/drupal-eca-to-ossa.md +11 -11
  422. package/{docs/migration → website/content/docs/migration-guides}/general-agent-schema.yml +1 -9
  423. package/website/content/docs/migration-guides/index.md +1 -1
  424. package/website/content/docs/migration-guides/langchain-to-ossa.md +17 -17
  425. package/website/content/docs/migration-guides/langflow-to-ossa.md +3 -3
  426. package/website/content/docs/migration-guides/openai-to-ossa.md +10 -10
  427. package/website/content/docs/openapi-extensions/examples.md +9 -9
  428. package/website/content/docs/openapi-extensions/index.md +59 -3
  429. package/website/content/docs/openapi-extensions/operation-extensions.md +61 -2
  430. package/website/content/docs/openapi-extensions/root-extensions.md +49 -3
  431. package/{docs/OSSA-COMPLIANT-BADGE.md → website/content/docs/ossa-compliant-badge.md} +18 -15
  432. package/website/content/docs/pre-release/index.md +10 -10
  433. package/website/content/docs/readme.md +35 -0
  434. package/website/content/docs/releases/v0.2.6.md +99 -0
  435. package/website/content/docs/schema-reference/agent-capabilities.md +50 -0
  436. package/website/content/docs/schema-reference/agent-id.md +52 -0
  437. package/website/content/docs/schema-reference/agent-name.md +50 -0
  438. package/website/content/docs/schema-reference/agent-role.md +54 -0
  439. package/website/content/docs/schema-reference/agent-spec.md +2 -2
  440. package/website/content/docs/schema-reference/agent-version.md +50 -0
  441. package/website/content/docs/schema-reference/autonomy.md +5 -5
  442. package/website/content/docs/schema-reference/constraints.md +5 -5
  443. package/website/content/docs/schema-reference/index.md +26 -157
  444. package/website/content/docs/schema-reference/llm-config.md +1 -1
  445. package/website/content/docs/schema-reference/observability.md +5 -5
  446. package/website/content/docs/schema-reference/ossa-manifest.md +6 -6
  447. package/website/content/docs/schema-reference/taxonomy.md +3 -3
  448. package/website/content/docs/types-reference/index.md +105 -0
  449. package/website/content/docs/use-cases/00-index.md +1 -1
  450. package/{docs/VERSIONING.md → website/content/docs/versioning.md} +9 -5
  451. package/website/dev.sh +53 -0
  452. package/website/docker-compose.dev.yml +36 -0
  453. package/website/lib/version.ts +18 -1
  454. package/website/lib/versions.json +103 -0
  455. package/website/next.config.ts +3 -1
  456. package/website/package-lock.json +552 -18
  457. package/website/package.json +11 -5
  458. package/website/postcss.config.mjs +1 -1
  459. package/website/scripts/fetch-versions.js +166 -0
  460. package/website/scripts/generate-examples-index.js +163 -0
  461. package/website/scripts/merge-docs-to-wiki.ts +207 -0
  462. package/website/scripts/sync-version.js +28 -0
  463. package/website/scripts/sync-wiki.ts +64 -3
  464. package/website/scripts/upload-wiki.ts +199 -0
  465. package/website/styles/_spacing.scss +453 -0
  466. package/website/styles/_tokens.scss +245 -0
  467. package/website/styles/_typography.scss +361 -0
  468. package/website/styles/_variables.scss +287 -0
  469. package/website/tailwind.config.ts +127 -22
  470. package/.releaserc.json.disabled +0 -81
  471. package/dist/spec/v0.2.5-dev/CHANGELOG.md +0 -171
  472. package/dist/spec/v0.2.5-dev/examples/customer-support-graph.ossa.yaml +0 -362
  473. package/dist/spec/v0.2.5-dev/examples/parallel-processors.ossa.yaml +0 -464
  474. package/dist/spec/v0.2.5-dev/examples/research-team.ossa.yaml +0 -440
  475. package/dist/spec/v0.2.5-dev/migrations/v0.2.4-to-v0.2.5.md +0 -317
  476. package/dist/spec/v0.2.5-dev/ossa-0.2.5-dev.yaml +0 -409
  477. package/docs/README.md +0 -31
  478. package/docs/agent-openapi-spec.yml +0 -942
  479. package/docs/openapi-extensions.md +0 -930
  480. package/docs/schemas/openapi-extensions.schema.json +0 -486
  481. package/openapi/gitlab-orchestrator.openapi.yaml +0 -330
  482. package/ossa-website-swarm-tasks.json +0 -105
  483. package/spec/v0.2.5-dev/CHANGELOG.md +0 -171
  484. package/spec/v0.2.5-dev/examples/customer-support-graph.ossa.yaml +0 -362
  485. package/spec/v0.2.5-dev/examples/parallel-processors.ossa.yaml +0 -464
  486. package/spec/v0.2.5-dev/examples/research-team.ossa.yaml +0 -440
  487. package/spec/v0.2.5-dev/migrations/v0.2.4-to-v0.2.5.md +0 -317
  488. package/spec/v0.2.5-dev/ossa-0.2.5-dev.yaml +0 -409
  489. package/website/app/api/validate/route.ts +0 -88
  490. package/website/app/globals.css +0 -108
  491. package/website/content/docs/OpenAPI-Extensions.md +0 -498
  492. package/website/content/docs/core-concepts/project-structure.md +0 -348
  493. package/website/content/docs/examples/Migration-Guides.md +0 -214
  494. package/website/content/docs/examples.md +0 -71
  495. package/website/content/docs/for-audiences/Enterprises.md +0 -256
  496. package/website/content/docs/for-audiences/architects.md +0 -224
  497. package/website/content/docs/for-audiences/developers.md +0 -220
  498. package/website/content/docs/getting-started/5-minute-overview.md +0 -85
  499. package/website/content/docs/getting-started/Hello-World.md +0 -184
  500. package/website/content/docs/getting-started/first-agent.md +0 -196
  501. package/website/content/docs/migration-guides/00-index.md +0 -76
  502. package/website/content/docs/migration-guides/README.md +0 -133
  503. package/website/next.config.js +0 -17
  504. package/website/postcss.config.js +0 -7
  505. package/website/tailwind.config.js +0 -58
  506. /package/dist/spec/{v0.2.4-dev/ossa-0.2.4-dev.schema.json → v0.2.4/ossa-0.2.4.schema.json} +0 -0
  507. /package/openapi/{ossa-registry-api.openapi.yaml → core/ossa-registry-api.openapi.yaml} +0 -0
  508. /package/openapi/{drupal-agent-api.openapi.yaml → reference-implementations/drupal-agent-api.openapi.yaml} +0 -0
  509. /package/openapi/{helm-generator.openapi.yaml → reference-implementations/helm-generator.openapi.yaml} +0 -0
  510. /package/spec/{v0.2.4-dev/ossa-0.2.4-dev.schema.json → v0.2.4/ossa-0.2.4.schema.json} +0 -0
  511. /package/{docs/migration → website/content/docs/migration-guides}/migration-manifest.json +0 -0
@@ -0,0 +1,445 @@
1
+ # OSSA Website Design System Implementation
2
+
3
+ ## Overview
4
+
5
+ This document summarizes the design system implementation for the OSSA website based on Issue #45. The implementation follows a phased approach to transform the website from developer-oriented to enterprise-ready with professional polish, accessibility compliance (WCAG 2.1 AA), and clear value articulation.
6
+
7
+ ## Implementation Status
8
+
9
+ ### ✅ Phase 1: Foundation & Design Tokens (COMPLETED)
10
+
11
+ #### 1.1 Design Token System (`website/styles/_tokens.scss`)
12
+ - **Color Scales**: Full 50-900 scales for all brand colors
13
+ - Primary (Blue-Purple #4A3ECD): 11 shades
14
+ - Secondary (Cyan-Blue #1CB9ED): 11 shades
15
+ - Accent (Purple #9060EA): 11 shades
16
+ - Success (Green #10b981): 11 shades
17
+ - Warning (Amber #f59e0b): 11 shades
18
+ - Error (Red #ef4444): 11 shades
19
+ - Info (Cyan #06b6d4): 11 shades
20
+ - Neutral/Gray: 11 shades
21
+
22
+ - **Gradient Tokens**: CSS custom properties for consistent gradients
23
+ - Primary, Secondary, Accent gradients
24
+ - Hero, Button gradients
25
+ - Success, Warning, Error, Info gradients
26
+ - Background gradients (light, primary, secondary)
27
+
28
+ - **Dark Mode Mappings**: Future-ready dark mode color system
29
+ - Background colors (primary, secondary, tertiary)
30
+ - Text colors (primary, secondary, tertiary)
31
+
32
+ - **Focus Ring Colors**: Accessibility-compliant focus indicators
33
+ - Primary, Secondary, Accent focus rings
34
+ - Alpha variants for layering
35
+
36
+ - **Additional Tokens**:
37
+ - Shadow system (sm, md, lg, xl, 2xl + colored shadows)
38
+ - Border radius (none to 3xl + full)
39
+ - Transitions (fast, base, slow, slower)
40
+ - Z-index layers (dropdown to tooltip)
41
+ - Opacity scale (0-100)
42
+
43
+ #### 1.2 Typography System (`website/styles/_typography.scss`)
44
+ - **Font Families**:
45
+ - Sans: Inter (body, headings, display)
46
+ - Mono: JetBrains Mono (code)
47
+
48
+ - **Font Weights**: 9 levels (100-900)
49
+
50
+ - **Typography Hierarchy**:
51
+ - Display: 72px / 48px mobile (extrabold, 1.1 line-height)
52
+ - H1: 56px / 40px mobile (bold, 1.2 line-height)
53
+ - H2: 40px / 32px mobile (bold, 1.3 line-height)
54
+ - H3: 32px / 28px mobile (semibold, 1.4 line-height)
55
+ - H4: 24px / 22px mobile (semibold, 1.5 line-height)
56
+ - H5: 20px / 18px mobile (semibold, 1.5 line-height)
57
+ - H6: 18px / 16px mobile (semibold, 1.5 line-height)
58
+ - Body: 16px (normal, 1.6 line-height)
59
+ - Small: 14px (normal, 1.5 line-height)
60
+ - Extra Small: 12px (normal, 1.4 line-height)
61
+
62
+ - **Responsive Typography**: Automatic mobile scaling (20-30% reduction)
63
+
64
+ - **Utility Classes**:
65
+ - Typography mixins for all levels
66
+ - Font weight utilities
67
+ - Letter spacing utilities
68
+ - Text transform utilities
69
+ - Text decoration utilities
70
+ - Text alignment utilities
71
+ - Truncate and line-clamp utilities
72
+
73
+ #### 1.3 Spacing & Layout System (`website/styles/_spacing.scss`)
74
+ - **Spacing Scale**: 4px base unit (0 to 96rem)
75
+ - Granular scale: 0, 1px, 2px, 4px, 6px, 8px, 10px, 12px, 14px, 16px...
76
+ - Extended scale up to 384px (96rem)
77
+
78
+ - **Vertical Rhythm System**:
79
+ - Section spacing: sm (48px), md (64px), lg (80px), xl (96px)
80
+ - Component spacing: xs (8px), sm (12px), md (16px), lg (24px), xl (32px)
81
+ - Element spacing: xs (4px), sm (8px), md (12px), lg (16px), xl (24px)
82
+
83
+ - **Container Max-Widths**:
84
+ - sm: 640px
85
+ - md: 768px
86
+ - lg: 1024px
87
+ - xl: 1280px
88
+ - 2xl: 1536px
89
+
90
+ - **Content Max-Widths** (for readable text):
91
+ - sm: 576px
92
+ - md: 672px
93
+ - lg: 768px
94
+ - xl: 896px
95
+ - 2xl: 1024px
96
+ - 3xl: 1152px
97
+ - 4xl: 1280px
98
+
99
+ - **Utility Classes**:
100
+ - Container classes with responsive padding
101
+ - Content container classes
102
+ - Section spacing classes
103
+ - Stack (vertical) and inline (horizontal) spacing
104
+ - Margin utilities (all directions)
105
+ - Padding utilities (all directions)
106
+ - Gap utilities for flexbox/grid
107
+
108
+ #### 1.4 Variables Integration (`website/styles/_variables.scss`)
109
+ - Imports all token files (@use syntax)
110
+ - Maintains backward compatibility with existing variable names
111
+ - Maps old variables to new token system
112
+
113
+ ### ✅ Phase 2: Core Component Library (COMPLETED)
114
+
115
+ #### 2.1 Button Component (`website/components/ui/Button.tsx`)
116
+ - **Variants**: 4 types
117
+ - Primary: Gradient background (primary-500 to primary-600)
118
+ - Secondary: Gradient background (secondary-500 to secondary-600)
119
+ - Outline: Transparent with border
120
+ - Ghost: Transparent with hover background
121
+
122
+ - **Sizes**: 3 options
123
+ - sm: text-sm, px-3, py-1.5
124
+ - md: text-base, px-4, py-2
125
+ - lg: text-lg, px-6, py-3
126
+
127
+ - **States**: 6 states
128
+ - Default: Base styling
129
+ - Hover: Enhanced shadow, darker gradient
130
+ - Active: Darkest gradient
131
+ - Focus: 2px ring with offset
132
+ - Disabled: 50% opacity, no pointer events
133
+ - Loading: Animated spinner, disabled state
134
+
135
+ - **Features**:
136
+ - Left/right icon support
137
+ - Full width option
138
+ - Accessible (ARIA attributes)
139
+ - Keyboard navigation support
140
+
141
+ #### 2.2 Card Component (`website/components/ui/Card.tsx`)
142
+ - **Variants**: 4 types
143
+ - Default: White background, border, subtle shadow
144
+ - Bordered: White background, 2px border
145
+ - Elevated: White background, large shadow
146
+ - Flat: Gray background, no border
147
+
148
+ - **Padding**: 4 options (none, sm, md, lg)
149
+
150
+ - **Interactive**: Optional hover effects
151
+ - Enhanced shadow
152
+ - Border color change
153
+ - Subtle scale animation
154
+
155
+ - **Sub-components**:
156
+ - CardHeader: Top section with margin
157
+ - CardTitle: Heading (h1-h6 support)
158
+ - CardDescription: Subtitle text
159
+ - CardContent: Main content area
160
+ - CardFooter: Bottom section with border
161
+
162
+ - **Semantic HTML**: Supports div, article, section
163
+
164
+ #### 2.3 Form Components
165
+
166
+ **Input Component** (`website/components/ui/Input.tsx`):
167
+ - Label with required indicator
168
+ - Error states with red styling
169
+ - Helper text
170
+ - Left/right icon support
171
+ - Full width option
172
+ - Accessibility:
173
+ - Auto-generated IDs
174
+ - aria-invalid
175
+ - aria-describedby
176
+ - Proper label association
177
+
178
+ **Select Component** (`website/components/ui/Select.tsx`):
179
+ - Custom dropdown styling
180
+ - Label with required indicator
181
+ - Error states
182
+ - Helper text
183
+ - Options array or children support
184
+ - Custom dropdown icon
185
+ - Full accessibility support
186
+
187
+ **Checkbox Component** (`website/components/ui/Checkbox.tsx`):
188
+ - Label and helper text
189
+ - Error states
190
+ - Proper focus indicators (2px ring)
191
+ - Accessible (ARIA attributes)
192
+ - Disabled state support
193
+
194
+ **Radio Component** (`website/components/ui/Radio.tsx`):
195
+ - Label and helper text
196
+ - Error states
197
+ - Proper focus indicators (2px ring)
198
+ - Accessible (ARIA attributes)
199
+ - Disabled state support
200
+
201
+ **Textarea Component** (`website/components/ui/Textarea.tsx`):
202
+ - Label with required indicator
203
+ - Error states
204
+ - Helper text
205
+ - Character count (optional)
206
+ - Resize options (none, vertical, horizontal, both)
207
+ - Min-height: 100px
208
+ - Full accessibility support
209
+
210
+ #### 2.4 Badge & Tag Components
211
+
212
+ **Badge Component** (`website/components/ui/Badge.tsx`):
213
+ - **Variants**: 7 types
214
+ - default, success, warning, error, info, primary, secondary
215
+ - **Sizes**: sm, md, lg
216
+ - **Features**:
217
+ - Optional dot indicator
218
+ - Rounded full (pill shape)
219
+ - Border styling
220
+ - Color-coded backgrounds
221
+
222
+ **Tag Component** (`website/components/ui/Tag.tsx`):
223
+ - **Variants**: 7 types (same as Badge)
224
+ - **Sizes**: sm, md, lg
225
+ - **Features**:
226
+ - Removable option with X button
227
+ - onRemove callback
228
+ - Rounded corners (not full)
229
+ - Hover effects
230
+ - Accessible remove button
231
+
232
+ #### 2.5 Component Export (`website/components/ui/index.ts`)
233
+ - Barrel export file for easy importing
234
+ - Exports all components and their TypeScript types
235
+ - Usage: `import { Button, Card, Input } from '@/components/ui'`
236
+
237
+ ## Accessibility Features Implemented
238
+
239
+ ### WCAG 2.1 AA Compliance
240
+ - ✅ **Focus Indicators**: 2px ring with offset on all interactive elements
241
+ - ✅ **Color Contrast**: All text/background combinations meet 4.5:1 (normal) or 3:1 (large text)
242
+ - ✅ **Keyboard Navigation**: All components fully keyboard accessible
243
+ - ✅ **ARIA Attributes**: Proper labels, roles, and states
244
+ - ✅ **Form Labels**: All inputs properly associated with labels
245
+ - ✅ **Error States**: Clear error messages with role="alert"
246
+ - ✅ **Touch Targets**: Minimum 44x44px for mobile (buttons, checkboxes, radios)
247
+ - ✅ **Screen Reader Support**: Descriptive text, aria-describedby, aria-invalid
248
+
249
+ ### Accessibility Utilities
250
+ - sr-only class for screen reader only content
251
+ - focus:not-sr-only for skip links
252
+ - aria-busy for loading states
253
+ - aria-hidden for decorative icons
254
+
255
+ ## Design System Benefits
256
+
257
+ ### For Developers
258
+ - **Consistent API**: All components follow same prop patterns
259
+ - **TypeScript Support**: Full type definitions for all components
260
+ - **Easy Imports**: Barrel exports for clean imports
261
+ - **Responsive**: Mobile-first with automatic scaling
262
+ - **Customizable**: className prop for extending styles
263
+ - **Well-Documented**: Inline comments and prop descriptions
264
+
265
+ ### For Users
266
+ - **Accessible**: WCAG 2.1 AA compliant
267
+ - **Performant**: Optimized transitions and animations
268
+ - **Responsive**: Works on all screen sizes
269
+ - **Consistent**: Unified visual language
270
+ - **Professional**: Enterprise-grade polish
271
+
272
+ ### For the Project
273
+ - **Maintainable**: Centralized design tokens
274
+ - **Scalable**: Easy to add new components
275
+ - **Flexible**: Supports theming and customization
276
+ - **Future-Ready**: Dark mode support prepared
277
+ - **Brand Consistent**: Follows OSSA brand guidelines
278
+
279
+ ## Next Steps (Remaining Phases)
280
+
281
+ ### Phase 3: Layout & Navigation (Weeks 5-6)
282
+ - [ ] Enhance Header component (active states, keyboard nav)
283
+ - [ ] Enhance Footer component (multi-column, social links)
284
+ - [ ] Create Breadcrumb component
285
+ - [ ] Create TableOfContents component
286
+ - [ ] Create Sidebar navigation component
287
+ - [ ] Improve mobile navigation
288
+
289
+ ### Phase 4: Content & Messaging (Weeks 7-8)
290
+ - [ ] Homepage redesign with new components
291
+ - [ ] Create ValueProposition component
292
+ - [ ] Create ComparisonMatrix component
293
+ - [ ] Create FeatureGrid component
294
+ - [ ] Create SocialProof component
295
+ - [ ] Add architecture diagrams
296
+ - [ ] Create CodeBlock component with copy button
297
+ - [ ] Create CodeExample component
298
+ - [ ] Create enterprise landing page
299
+
300
+ ### Phase 5: Interactive Elements (Weeks 9-10)
301
+ - [ ] Create LoadingSpinner component
302
+ - [ ] Create Skeleton component
303
+ - [ ] Create Toast notification component
304
+ - [ ] Add scroll animations
305
+ - [ ] Add micro-interactions
306
+ - [ ] Enhance playground
307
+
308
+ ### Phase 6: Accessibility & Performance (Weeks 11-12)
309
+ - [ ] Complete accessibility audit
310
+ - [ ] Add SkipLink component
311
+ - [ ] Ensure all images have alt text
312
+ - [ ] Optimize performance (Lighthouse >90)
313
+ - [ ] Optimize Core Web Vitals
314
+ - [ ] Add lazy loading
315
+
316
+ ### Phase 7: Testing & QA (Weeks 13-14)
317
+ - [ ] Set up visual regression testing
318
+ - [ ] Cross-browser testing
319
+ - [ ] Component testing
320
+ - [ ] Accessibility testing
321
+ - [ ] Performance testing
322
+
323
+ ## Files Created
324
+
325
+ ### Design Tokens
326
+ - `website/styles/_tokens.scss` - Color scales, gradients, shadows, etc.
327
+ - `website/styles/_typography.scss` - Typography system
328
+ - `website/styles/_spacing.scss` - Spacing and layout system
329
+ - `website/styles/_variables.scss` - Updated with imports
330
+
331
+ ### UI Components
332
+ - `website/components/ui/Button.tsx` - Button component
333
+ - `website/components/ui/Card.tsx` - Card component with sub-components
334
+ - `website/components/ui/Input.tsx` - Input component
335
+ - `website/components/ui/Select.tsx` - Select component
336
+ - `website/components/ui/Checkbox.tsx` - Checkbox component
337
+ - `website/components/ui/Radio.tsx` - Radio component
338
+ - `website/components/ui/Textarea.tsx` - Textarea component
339
+ - `website/components/ui/Badge.tsx` - Badge component
340
+ - `website/components/ui/Tag.tsx` - Tag component
341
+ - `website/components/ui/index.ts` - Barrel export
342
+
343
+ ## Usage Examples
344
+
345
+ ### Button
346
+ ```tsx
347
+ import { Button } from '@/components/ui';
348
+
349
+ <Button variant="primary" size="lg" loading={isLoading}>
350
+ Get Started
351
+ </Button>
352
+
353
+ <Button variant="outline" leftIcon={<Icon />}>
354
+ Learn More
355
+ </Button>
356
+ ```
357
+
358
+ ### Card
359
+ ```tsx
360
+ import { Card, CardHeader, CardTitle, CardDescription, CardContent } from '@/components/ui';
361
+
362
+ <Card variant="elevated" interactive>
363
+ <CardHeader>
364
+ <CardTitle>Feature Title</CardTitle>
365
+ <CardDescription>Feature description</CardDescription>
366
+ </CardHeader>
367
+ <CardContent>
368
+ Content goes here
369
+ </CardContent>
370
+ </Card>
371
+ ```
372
+
373
+ ### Form
374
+ ```tsx
375
+ import { Input, Select, Checkbox, Textarea } from '@/components/ui';
376
+
377
+ <Input
378
+ label="Email"
379
+ type="email"
380
+ required
381
+ error={errors.email}
382
+ helperText="We'll never share your email"
383
+ />
384
+
385
+ <Select
386
+ label="Country"
387
+ options={countries}
388
+ error={errors.country}
389
+ />
390
+
391
+ <Checkbox
392
+ label="I agree to the terms"
393
+ error={errors.terms}
394
+ />
395
+
396
+ <Textarea
397
+ label="Message"
398
+ showCharCount
399
+ maxLength={500}
400
+ resize="vertical"
401
+ />
402
+ ```
403
+
404
+ ### Badge & Tag
405
+ ```tsx
406
+ import { Badge, Tag } from '@/components/ui';
407
+
408
+ <Badge variant="success" dot>Active</Badge>
409
+ <Badge variant="warning" size="sm">Beta</Badge>
410
+
411
+ <Tag variant="primary" removable onRemove={() => handleRemove()}>
412
+ React
413
+ </Tag>
414
+ ```
415
+
416
+ ## Technical Notes
417
+
418
+ ### Dependencies
419
+ - No additional dependencies required
420
+ - Uses existing Tailwind CSS configuration
421
+ - Compatible with Next.js 15 and React 18
422
+
423
+ ### Browser Support
424
+ - Modern browsers (Chrome, Firefox, Safari, Edge)
425
+ - Progressive enhancement for older browsers
426
+ - Graceful degradation for unsupported features
427
+
428
+ ### Performance
429
+ - Minimal CSS footprint (SCSS compiled to CSS)
430
+ - No runtime CSS-in-JS overhead
431
+ - Optimized transitions (GPU-accelerated)
432
+ - Tree-shakeable exports
433
+
434
+ ## Conclusion
435
+
436
+ Phase 1 (Foundation & Design Tokens) and Phase 2 (Core Component Library) are complete. The design system provides a solid foundation for building the remaining phases. All components are production-ready, accessible, and follow best practices.
437
+
438
+ The implementation prioritizes:
439
+ 1. **Accessibility** - WCAG 2.1 AA compliance from the start
440
+ 2. **Developer Experience** - Consistent API, TypeScript support
441
+ 3. **Performance** - Optimized animations, minimal overhead
442
+ 4. **Maintainability** - Centralized tokens, clear structure
443
+ 5. **Scalability** - Easy to extend and customize
444
+
445
+ Next steps involve implementing the remaining phases (3-7) to complete the full design system transformation outlined in Issue #45.
@@ -1,17 +1,30 @@
1
1
  # OSSA Website - Next.js Dev Server (for quick deployment)
2
+ # Build from project root to access examples directory
2
3
  FROM node:20-alpine
3
4
 
4
5
  WORKDIR /app
5
6
 
6
7
  # Copy package files
7
- COPY package*.json ./
8
- RUN npm install --legacy-peer-deps
8
+ COPY website/package*.json ./website/
9
+ RUN cd website && npm install --legacy-peer-deps
9
10
 
10
- # Copy source code
11
- COPY . .
11
+ # Copy examples directory (needed for generate-examples script)
12
+ COPY examples ./examples
13
+
14
+ # Copy website source code
15
+ COPY website ./website
16
+
17
+ WORKDIR /app/website
18
+
19
+ # Generate examples.json - this MUST succeed
20
+ RUN npm run generate-examples
21
+
22
+ # Verify examples.json was created and has content
23
+ RUN test -f public/examples.json && echo "✅ examples.json created" || (echo "❌ examples.json NOT FOUND" && exit 1)
24
+ RUN test -s public/examples.json && echo "✅ examples.json has content" || (echo "❌ examples.json is empty" && exit 1)
12
25
 
13
26
  # Expose port
14
27
  EXPOSE 3000
15
28
 
16
- # Start Next.js dev server (no build needed)
29
+ # Start Next.js dev server
17
30
  CMD ["npm", "run", "dev"]