@bluefly/openstandardagents 0.2.7 → 0.2.9

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 (327) hide show
  1. package/.devfile.yaml +1 -1
  2. package/.env.example +1 -1
  3. package/.github/AGENTS.md +245 -0
  4. package/.github/agents/github-issue-triage.ossa.yaml +99 -0
  5. package/.github/agents/github-pr-triage.ossa.yaml +137 -0
  6. package/.github/workflows/issue-sync-to-gitlab.yml +138 -0
  7. package/.github/workflows/pr-triage-to-gitlab.yml +164 -0
  8. package/.version.json +2 -2
  9. package/.wiki-config.json +24 -0
  10. package/CHANGELOG.md +44 -18
  11. package/CODEOWNERS +75 -0
  12. package/CONTRIBUTING.md +103 -4
  13. package/README.md +178 -243
  14. package/dist/index.d.ts +1 -0
  15. package/dist/index.d.ts.map +1 -1
  16. package/dist/index.js +2 -0
  17. package/dist/index.js.map +1 -1
  18. package/dist/repositories/schema.repository.d.ts +6 -1
  19. package/dist/repositories/schema.repository.d.ts.map +1 -1
  20. package/dist/repositories/schema.repository.js +49 -27
  21. package/dist/repositories/schema.repository.js.map +1 -1
  22. package/dist/services/migration.service.d.ts +4 -3
  23. package/dist/services/migration.service.d.ts.map +1 -1
  24. package/dist/services/migration.service.js +11 -10
  25. package/dist/services/migration.service.js.map +1 -1
  26. package/dist/services/release-automation/release.service.js +1 -1
  27. package/dist/services/release-automation/release.service.js.map +1 -1
  28. package/dist/services/release-automation/schemas/release.schema.js +1 -1
  29. package/dist/services/release-automation/webhook.service.js +3 -3
  30. package/dist/services/release-automation/webhook.service.js.map +1 -1
  31. package/dist/services/runtime/claude/claude-adapter.d.ts +1 -1
  32. package/dist/services/runtime/claude/claude-adapter.d.ts.map +1 -1
  33. package/dist/services/runtime/claude/claude-adapter.js +2 -2
  34. package/dist/services/runtime/claude/claude-adapter.js.map +1 -1
  35. package/dist/spec/v0.2.8/CHANGELOG.md +401 -0
  36. package/dist/spec/v0.2.8/README.md +72 -0
  37. package/dist/spec/v0.2.8/migrations/v0.2.3-to-v0.2.4.md +599 -0
  38. package/dist/spec/v0.2.8/migrations/v0.2.5-RC-to-v0.2.6.md +65 -0
  39. package/dist/spec/v0.2.8/migrations/v0.2.6-to-v0.2.8.md +81 -0
  40. package/{spec/v0.2.6-dev/ossa-0.2.5.schema.json → dist/spec/v0.2.8/ossa-0.2.8.schema.json} +1509 -52
  41. package/dist/spec/v0.2.8/ossa-0.2.8.yaml +581 -0
  42. package/dist/spec/v0.2.9/a2a-protocol.md +1337 -0
  43. package/dist/spec/v0.2.9/agent.md +1946 -0
  44. package/dist/spec/v0.2.9/capabilities/index.yaml +25 -0
  45. package/dist/spec/v0.2.9/capabilities/memory.yaml +251 -0
  46. package/dist/spec/v0.2.9/capability-schema.md +576 -0
  47. package/dist/spec/v0.2.9/compliance-profiles.md +533 -0
  48. package/dist/spec/v0.2.9/conformance-testing.md +1527 -0
  49. package/dist/spec/v0.2.9/gitlab-duo-integration.md +621 -0
  50. package/dist/spec/v0.2.9/ossa-0.2.9.schema.json +3699 -0
  51. package/dist/spec/v0.2.9/runtime-semantics.md +464 -0
  52. package/dist/spec/v0.2.9/security-model.md +1245 -0
  53. package/dist/spec/v0.2.9/semantic-conventions.md +347 -0
  54. package/dist/spec/v0.2.9/types.ts +522 -0
  55. package/dist/types/index.d.ts +3 -2
  56. package/dist/types/index.d.ts.map +1 -1
  57. package/dist/types/policy.d.ts +377 -0
  58. package/dist/types/policy.d.ts.map +1 -0
  59. package/dist/types/policy.js +84 -0
  60. package/dist/types/policy.js.map +1 -0
  61. package/dist/utils/index.d.ts +6 -0
  62. package/dist/utils/index.d.ts.map +1 -0
  63. package/dist/utils/index.js +6 -0
  64. package/dist/utils/index.js.map +1 -0
  65. package/dist/utils/version.d.ts +68 -0
  66. package/dist/utils/version.d.ts.map +1 -0
  67. package/dist/utils/version.js +156 -0
  68. package/dist/utils/version.js.map +1 -0
  69. package/docs/specs/policy-dsl.md +925 -0
  70. package/eslint-report.json +1 -0
  71. package/examples/adk-integration/code-review-workflow.yml +1 -1
  72. package/examples/adk-integration/customer-support.yml +1 -1
  73. package/examples/adk-integration/data-pipeline.yml +1 -1
  74. package/examples/advanced/reasoning-agent.yaml +136 -0
  75. package/examples/advanced/workflows/hybrid-model-strategy.yaml +1 -1
  76. package/examples/agent-manifests/critics/critic-agent.yaml +1 -1
  77. package/examples/agent-manifests/governors/governor-agent.yaml +1 -1
  78. package/examples/agent-manifests/integrators/integrator-agent.yaml +1 -1
  79. package/examples/agent-manifests/judges/judge-agent.yaml +1 -1
  80. package/examples/agent-manifests/monitors/monitor-agent.yaml +1 -1
  81. package/examples/agent-manifests/orchestrators/orchestrator-agent.yaml +1 -1
  82. package/examples/agent-manifests/sample-compliant-agent.yaml +1 -1
  83. package/examples/agent-manifests/workers/worker-agent.yaml +1 -1
  84. package/examples/agents-md/code-agent.ossa.json +100 -0
  85. package/examples/agents-md/monorepo-agent.ossa.yaml +180 -0
  86. package/examples/anthropic/claude-assistant.ossa.json +1 -1
  87. package/examples/autogen/multi-agent.ossa.json +1 -1
  88. package/examples/claude-code/code-reviewer.ossa.yaml +78 -0
  89. package/examples/claude-code/ossa-validator.ossa.yaml +80 -0
  90. package/examples/common_npm/agent-router.ossa.yaml +1 -0
  91. package/examples/common_npm/agent-router.v0.2.2.ossa.yaml +1 -1
  92. package/examples/crewai/research-team.ossa.json +1 -1
  93. package/examples/cursor/code-review-agent.ossa.json +1 -1
  94. package/examples/drupal/gitlab-ml-recommender.ossa.yaml +1 -0
  95. package/examples/drupal/gitlab-ml-recommender.v0.2.2.ossa.yaml +1 -1
  96. package/examples/extensions/agents-md-v1.yml +175 -0
  97. package/examples/extensions/drupal-v1.yml +1 -1
  98. package/examples/extensions/kagent-v1.yml +1 -1
  99. package/examples/getting-started/hello-world-complete.ossa.yaml +1 -1
  100. package/examples/integration-patterns/agent-to-agent-orchestration.ossa.yaml +4 -4
  101. package/examples/kagent/compliance-validator.ossa.yaml +1 -1
  102. package/examples/kagent/cost-optimizer.ossa.yaml +1 -1
  103. package/examples/kagent/documentation-agent.ossa.yaml +1 -1
  104. package/examples/kagent/k8s-troubleshooter-v1.ossa.yaml +1 -0
  105. package/examples/kagent/k8s-troubleshooter-v1.v0.2.2.ossa.yaml +1 -1
  106. package/examples/kagent/k8s-troubleshooter.ossa.yaml +1 -1
  107. package/examples/kagent/security-scanner.ossa.yaml +1 -1
  108. package/examples/langchain/chain-agent.ossa.json +1 -1
  109. package/examples/langflow/workflow-agent.ossa.json +1 -1
  110. package/examples/langgraph/state-machine-agent.ossa.json +1 -1
  111. package/examples/llamaindex/rag-agent.ossa.json +1 -1
  112. package/examples/migration-guides/from-langchain-to-ossa.yaml +4 -4
  113. package/examples/multi-agent/README.md +74 -0
  114. package/examples/multi-agent/conditional-router.ossa.yaml +42 -0
  115. package/examples/multi-agent/parallel-execution.ossa.yaml +54 -0
  116. package/examples/multi-agent/sequential-pipeline.ossa.yaml +45 -0
  117. package/examples/openai/basic-agent.ossa.yaml +1 -1
  118. package/examples/openai/multi-tool-agent.ossa.json +1 -1
  119. package/examples/openai/swarm-agent.ossa.json +1 -1
  120. package/examples/production/document-analyzer-openai.yml +1 -1
  121. package/examples/quickstart/support-agent.ossa.yaml +1 -1
  122. package/examples/spec-examples/audit-agent.yml +1 -1
  123. package/examples/spec-examples/chat-agent.yml +1 -1
  124. package/examples/spec-examples/compliance-agent.yml +1 -1
  125. package/examples/spec-examples/monitoring-agent.yml +1 -1
  126. package/examples/spec-examples/workflow-agent.yml +1 -1
  127. package/examples/templates/ossa-compliance.yaml +1 -1
  128. package/examples/vercel/edge-agent.ossa.json +1 -1
  129. package/gl-code-quality-report.json +62 -0
  130. package/llms-ctx-full.txt +39 -0
  131. package/llms-ctx.txt +39 -0
  132. package/llms.txt +47 -0
  133. package/package.json +6 -3
  134. package/scripts/README.md +25 -0
  135. package/scripts/compliance-audit.ts +796 -0
  136. package/scripts/eslint-to-codequality.cjs +34 -0
  137. package/scripts/generate-agents-catalog.ts +2 -1
  138. package/scripts/generate-api-docs.ts +2 -1
  139. package/scripts/generate-examples-docs.ts +2 -1
  140. package/scripts/generate-llms-ctx.sh +17 -0
  141. package/scripts/generate-schema-docs.ts +31 -10
  142. package/scripts/sync-version.js +4 -12
  143. package/scripts/validate-schema.ts +2 -1
  144. package/spec/v0.2.8/CHANGELOG.md +401 -0
  145. package/spec/v0.2.8/README.md +72 -0
  146. package/spec/v0.2.8/migrations/v0.2.3-to-v0.2.4.md +599 -0
  147. package/spec/v0.2.8/migrations/v0.2.5-RC-to-v0.2.6.md +65 -0
  148. package/spec/v0.2.8/migrations/v0.2.6-to-v0.2.8.md +81 -0
  149. package/spec/{v0.2.6-dev/ossa-0.2.6-dev.schema.json → v0.2.8/ossa-0.2.8.schema.json} +1509 -52
  150. package/spec/v0.2.8/ossa-0.2.8.yaml +581 -0
  151. package/spec/v0.2.9/a2a-protocol.md +1337 -0
  152. package/spec/v0.2.9/agent.md +1946 -0
  153. package/spec/v0.2.9/capabilities/index.yaml +25 -0
  154. package/spec/v0.2.9/capabilities/memory.yaml +251 -0
  155. package/spec/v0.2.9/capability-schema.md +576 -0
  156. package/spec/v0.2.9/compliance-profiles.md +533 -0
  157. package/spec/v0.2.9/conformance-testing.md +1527 -0
  158. package/spec/v0.2.9/gitlab-duo-integration.md +621 -0
  159. package/spec/v0.2.9/ossa-0.2.9.schema.json +3699 -0
  160. package/spec/v0.2.9/runtime-semantics.md +464 -0
  161. package/spec/v0.2.9/security-model.md +1245 -0
  162. package/spec/v0.2.9/semantic-conventions.md +347 -0
  163. package/spec/v0.2.9/types.ts +522 -0
  164. package/test-results/junit.xml +337 -0
  165. package/.github/workflows/pr-comment.yml +0 -33
  166. package/bin/validate-ossa-0.2.5-RC.ts +0 -244
  167. package/dist/spec/v0.2.6-dev/ossa-0.2.5.schema.json +0 -1696
  168. package/dist/spec/v0.2.6-dev/ossa-0.2.6-dev.schema.json +0 -1696
  169. package/scripts/lib/exec.ts +0 -37
  170. package/scripts/lib/file-ops.ts +0 -58
  171. package/scripts/lib/version.ts +0 -83
  172. package/website/.lighthouserc.ts +0 -24
  173. package/website/.prettierrc +0 -10
  174. package/website/DESIGN_SYSTEM_IMPLEMENTATION.md +0 -445
  175. package/website/Dockerfile +0 -30
  176. package/website/app/about/page.tsx +0 -304
  177. package/website/app/blog/[slug]/page.tsx +0 -208
  178. package/website/app/blog/page.tsx +0 -249
  179. package/website/app/design-guide/page.tsx +0 -511
  180. package/website/app/docs/[[...slug]]/page.tsx +0 -847
  181. package/website/app/docs/core-concepts/project-structure/page.tsx +0 -349
  182. package/website/app/ecosystem/page.tsx +0 -410
  183. package/website/app/examples/page.tsx +0 -133
  184. package/website/app/globals.scss +0 -370
  185. package/website/app/layout.tsx +0 -106
  186. package/website/app/license/page.tsx +0 -183
  187. package/website/app/not-found.tsx +0 -18
  188. package/website/app/page.tsx +0 -686
  189. package/website/app/page.tsx.bak +0 -679
  190. package/website/app/page.tsx.bak2 +0 -649
  191. package/website/app/playground/page.tsx +0 -487
  192. package/website/app/robots.ts +0 -19
  193. package/website/app/rss.xml/route.ts +0 -74
  194. package/website/app/schema/page.tsx +0 -1001
  195. package/website/app/sitemap.ts +0 -56
  196. package/website/app/specification/page.tsx +0 -287
  197. package/website/components/InstallCommand.tsx +0 -96
  198. package/website/components/Logo.tsx +0 -97
  199. package/website/components/StructuredData.tsx +0 -65
  200. package/website/components/docs/DocsSearch.tsx +0 -104
  201. package/website/components/docs/DocsSidebar.tsx +0 -155
  202. package/website/components/docs/MarkdownContent.tsx +0 -401
  203. package/website/components/docs/VersionSelector.tsx +0 -105
  204. package/website/components/examples/ExamplesViewer.tsx +0 -293
  205. package/website/components/layout/Footer.tsx +0 -116
  206. package/website/components/layout/Header.tsx +0 -172
  207. package/website/components/schema/SchemaComponentsAccordion.tsx +0 -84
  208. package/website/components/schema/SchemaExplorer.tsx +0 -213
  209. package/website/components/ui/Badge.tsx +0 -82
  210. package/website/components/ui/Button.tsx +0 -116
  211. package/website/components/ui/Card.tsx +0 -167
  212. package/website/components/ui/Checkbox.tsx +0 -141
  213. package/website/components/ui/Input.tsx +0 -169
  214. package/website/components/ui/Radio.tsx +0 -141
  215. package/website/components/ui/Select.tsx +0 -182
  216. package/website/components/ui/Tag.tsx +0 -158
  217. package/website/components/ui/Textarea.tsx +0 -195
  218. package/website/components/ui/index.ts +0 -11
  219. package/website/content/blog/OpenAPI-AI-Agents-Standard.md +0 -285
  220. package/website/content/blog/Why-Formal-Standards-Matter-Now.md +0 -198
  221. package/website/content/blog/gitlab-kubernetes-agent-ecosystem.md +0 -286
  222. package/website/content/blog/introducing-ossa-framework.md +0 -328
  223. package/website/content/blog/ossa-production-results.md +0 -279
  224. package/website/content/blog/welcome-to-ossa.md +0 -43
  225. package/website/content/blog/why-ai-agents-need-open-standard.md +0 -98
  226. package/website/content/docs/00-home.md +0 -153
  227. package/website/content/docs/adapters/openai-adapter.md +0 -693
  228. package/website/content/docs/agents/catalog.md +0 -28
  229. package/website/content/docs/aiflow-framework-integration-with-ossa.md +0 -107
  230. package/website/content/docs/api-reference/index.md +0 -38
  231. package/website/content/docs/api-reference/ossa-core-api.md +0 -634
  232. package/website/content/docs/api-reference/ossa-registry-api.md +0 -515
  233. package/website/content/docs/api-reference/unified-agent-gateway.md +0 -599
  234. package/website/content/docs/architecture/execution-flow.md +0 -335
  235. package/website/content/docs/architecture/multi-agent-systems.md +0 -737
  236. package/website/content/docs/architecture/overview.md +0 -121
  237. package/website/content/docs/architecture/stack-integration.md +0 -461
  238. package/website/content/docs/changelog.md +0 -246
  239. package/website/content/docs/cli-reference/index.md +0 -111
  240. package/website/content/docs/cli-reference/ossa-agents.md +0 -70
  241. package/website/content/docs/cli-reference/ossa-export.md +0 -56
  242. package/website/content/docs/cli-reference/ossa-generate.md +0 -66
  243. package/website/content/docs/cli-reference/ossa-gitlab-agent.md +0 -57
  244. package/website/content/docs/cli-reference/ossa-import.md +0 -56
  245. package/website/content/docs/cli-reference/ossa-init.md +0 -57
  246. package/website/content/docs/cli-reference/ossa-migrate.md +0 -62
  247. package/website/content/docs/cli-reference/ossa-run.md +0 -66
  248. package/website/content/docs/cli-reference/ossa-schema.md +0 -57
  249. package/website/content/docs/cli-reference/ossa-setup.md +0 -57
  250. package/website/content/docs/cli-reference/ossa-validate.md +0 -66
  251. package/website/content/docs/configuration/index.md +0 -97
  252. package/website/content/docs/contributing.md +0 -599
  253. package/website/content/docs/deployment/github-mirroring.md +0 -924
  254. package/website/content/docs/documentation.md +0 -100
  255. package/website/content/docs/ecosystem/framework-support.md +0 -1361
  256. package/website/content/docs/ecosystem/overview.md +0 -366
  257. package/website/content/docs/errors/index.md +0 -10
  258. package/website/content/docs/examples/aiflow-framework-integration-with-ossa.md +0 -107
  259. package/website/content/docs/examples/catalog.md +0 -300
  260. package/website/content/docs/for-audiences/students-researchers.md +0 -122
  261. package/website/content/docs/getting-started/index.md +0 -92
  262. package/website/content/docs/getting-started/installation.md +0 -155
  263. package/website/content/docs/getting-started/running-agents.md +0 -309
  264. package/website/content/docs/getting-started.md +0 -91
  265. package/website/content/docs/integrations/aiflow.md +0 -104
  266. package/website/content/docs/integrations/drupal.md +0 -105
  267. package/website/content/docs/migration-guides/agent-schema-comparison.md +0 -232
  268. package/website/content/docs/migration-guides/anthropic-mcp-to-ossa.md +0 -1750
  269. package/website/content/docs/migration-guides/crewai-to-ossa.md +0 -274
  270. package/website/content/docs/migration-guides/drupal-eca-to-ossa.md +0 -2017
  271. package/website/content/docs/migration-guides/general-agent-schema.yml +0 -247
  272. package/website/content/docs/migration-guides/index.md +0 -133
  273. package/website/content/docs/migration-guides/langchain-to-ossa.md +0 -1714
  274. package/website/content/docs/migration-guides/langflow-to-ossa.md +0 -2075
  275. package/website/content/docs/migration-guides/migration-manifest.json +0 -64
  276. package/website/content/docs/migration-guides/openai-to-ossa.md +0 -1202
  277. package/website/content/docs/openapi-extensions/examples.md +0 -550
  278. package/website/content/docs/openapi-extensions/index.md +0 -551
  279. package/website/content/docs/openapi-extensions/operation-extensions.md +0 -457
  280. package/website/content/docs/openapi-extensions/root-extensions.md +0 -410
  281. package/website/content/docs/ossa-compliant-badge.md +0 -251
  282. package/website/content/docs/pre-release/index.md +0 -175
  283. package/website/content/docs/quick-reference.md +0 -17
  284. package/website/content/docs/readme.md +0 -35
  285. package/website/content/docs/releases/v0.2.6.md +0 -99
  286. package/website/content/docs/schema-reference/agent-capabilities.md +0 -50
  287. package/website/content/docs/schema-reference/agent-id.md +0 -52
  288. package/website/content/docs/schema-reference/agent-name.md +0 -50
  289. package/website/content/docs/schema-reference/agent-role.md +0 -54
  290. package/website/content/docs/schema-reference/agent-spec.md +0 -406
  291. package/website/content/docs/schema-reference/agent-version.md +0 -50
  292. package/website/content/docs/schema-reference/autonomy.md +0 -568
  293. package/website/content/docs/schema-reference/constraints.md +0 -543
  294. package/website/content/docs/schema-reference/index.md +0 -45
  295. package/website/content/docs/schema-reference/llm-config.md +0 -445
  296. package/website/content/docs/schema-reference/observability.md +0 -654
  297. package/website/content/docs/schema-reference/ossa-manifest.md +0 -309
  298. package/website/content/docs/schema-reference/taxonomy.md +0 -509
  299. package/website/content/docs/schema-reference/tools.md +0 -628
  300. package/website/content/docs/templates/blog-post.md +0 -43
  301. package/website/content/docs/types-reference/index.md +0 -105
  302. package/website/content/docs/use-cases/00-index.md +0 -395
  303. package/website/content/docs/use-cases/cicd-code-review.md +0 -1236
  304. package/website/content/docs/use-cases/customer-support.md +0 -1234
  305. package/website/content/docs/use-cases/enterprise-compliance.md +0 -1208
  306. package/website/content/docs/use-cases/research-multi-agent.md +0 -1161
  307. package/website/content/docs/versioning.md +0 -288
  308. package/website/dev.sh +0 -53
  309. package/website/docker-compose.dev.yml +0 -36
  310. package/website/lib/version.ts +0 -35
  311. package/website/lib/versions.json +0 -103
  312. package/website/next.config.ts +0 -18
  313. package/website/nginx.conf +0 -32
  314. package/website/package-lock.json +0 -9679
  315. package/website/package.json +0 -59
  316. package/website/postcss.config.mjs +0 -9
  317. package/website/scripts/fetch-versions.js +0 -166
  318. package/website/scripts/generate-examples-index.js +0 -163
  319. package/website/scripts/merge-docs-to-wiki.ts +0 -207
  320. package/website/scripts/sync-version.js +0 -72
  321. package/website/scripts/sync-wiki.ts +0 -322
  322. package/website/scripts/upload-wiki.ts +0 -199
  323. package/website/styles/_spacing.scss +0 -453
  324. package/website/styles/_tokens.scss +0 -245
  325. package/website/styles/_typography.scss +0 -361
  326. package/website/styles/_variables.scss +0 -287
  327. package/website/tailwind.config.ts +0 -170
@@ -1,511 +0,0 @@
1
- import Link from 'next/link';
2
- import { Logo } from '@/components/Logo';
3
-
4
- export const metadata = {
5
- title: 'OSSA Design Guide',
6
- description: 'Complete design system and component guidelines for building OSSA pages',
7
- };
8
-
9
- export default function DesignGuidePage() {
10
- return (
11
- <>
12
- {/* Hero Section */}
13
- <div className="bg-gradient-to-br from-secondary via-primary to-accent text-white py-16 px-4">
14
- <div className="container mx-auto max-w-6xl text-center">
15
- <div className="inline-flex items-center justify-center w-20 h-20 bg-white/20 backdrop-blur-sm rounded-full mb-6">
16
- <svg className="w-10 h-10" fill="none" stroke="currentColor" viewBox="0 0 24 24">
17
- <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M7 21a4 4 0 01-4-4V5a2 2 0 012-2h4a2 2 0 012 2v12a4 4 0 01-4 4zm0 0h12a2 2 0 002-2v-4a2 2 0 00-2-2h-2.343M11 7.343l1.657-1.657a2 2 0 012.828 0l2.829 2.829a2 2 0 010 2.828l-8.486 8.485M7 17h.01" />
18
- </svg>
19
- </div>
20
- <h1 className="text-5xl font-bold mb-4">OSSA Design Guide</h1>
21
- <p className="text-xl text-white/90 mb-2">
22
- Complete design system for building consistent OSSA pages
23
- </p>
24
- <p className="text-lg text-white/80">
25
- Brand guidelines, components, colors, typography, and patterns
26
- </p>
27
- </div>
28
- </div>
29
-
30
- <div className="container mx-auto max-w-7xl px-4 py-12">
31
- {/* Brand Identity */}
32
- <section className="mb-16">
33
- <div className="flex items-center mb-8">
34
- <div className="w-12 h-12 bg-gradient-to-br from-secondary via-primary to-accent rounded-lg flex items-center justify-center mr-4">
35
- <svg className="w-6 h-6 text-white" fill="none" stroke="currentColor" viewBox="0 0 24 24">
36
- <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M7 21a4 4 0 01-4-4V5a2 2 0 012-2h4a2 2 0 012 2v12a4 4 0 01-4 4zm0 0h12a2 2 0 002-2v-4a2 2 0 00-2-2h-2.343M11 7.343l1.657-1.657a2 2 0 012.828 0l2.829 2.829a2 2 0 010 2.828l-8.486 8.485M7 17h.01" />
37
- </svg>
38
- </div>
39
- <h2 className="text-3xl font-bold text-primary">Brand Identity</h2>
40
- </div>
41
-
42
- <div className="grid md:grid-cols-2 gap-8 mb-8">
43
- <div className="card">
44
- <h3 className="text-xl font-bold mb-4 text-gray-900">Logo</h3>
45
- <div className="bg-gray-50 rounded-lg p-8 flex items-center justify-center mb-4">
46
- <img src="/assets/brand/ossa-logo.svg" alt="OSSA Logo" className="h-32 w-32" />
47
- </div>
48
- <p className="text-gray-700 mb-4">
49
- The OSSA logo represents the hub-and-spoke architecture of agent orchestration.
50
- The central hub (primary blue) connects to agent nodes (secondary cyan).
51
- </p>
52
- <div className="space-y-2 text-sm text-gray-600">
53
- <p><strong>Usage:</strong> Always maintain clear space around the logo (minimum 20% of logo height)</p>
54
- <p><strong>Minimum size:</strong> 40px × 40px for digital use</p>
55
- <p><strong>Do not:</strong> Rotate, distort, or recolor the logo</p>
56
- </div>
57
- </div>
58
-
59
- <div className="card">
60
- <h3 className="text-xl font-bold mb-4 text-gray-900">Tagline</h3>
61
- <div className="bg-gradient-to-br from-primary/10 to-secondary/10 rounded-lg p-6 mb-4">
62
- <p className="text-2xl font-bold text-primary mb-2">"The OpenAPI for AI Agents"</p>
63
- <p className="text-gray-700">
64
- This tagline should appear prominently on the homepage and in key marketing materials.
65
- It communicates OSSA's purpose: standardizing agent definitions just as OpenAPI standardized REST APIs.
66
- </p>
67
- </div>
68
- <div className="space-y-2 text-sm text-gray-600">
69
- <p><strong>Usage:</strong> Homepage hero, marketing pages, documentation headers</p>
70
- <p><strong>Variations:</strong> Can be shortened to "The OpenAPI for Agents" in tight spaces</p>
71
- </div>
72
- </div>
73
- </div>
74
- </section>
75
-
76
- {/* Color System */}
77
- <section className="mb-16">
78
- <div className="flex items-center mb-8">
79
- <div className="w-12 h-12 bg-gradient-to-br from-secondary via-primary to-accent rounded-lg flex items-center justify-center mr-4">
80
- <svg className="w-6 h-6 text-white" fill="none" stroke="currentColor" viewBox="0 0 24 24">
81
- <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M7 21a4 4 0 01-4-4V5a2 2 0 012-2h4a2 2 0 012 2v12a4 4 0 01-4 4zm0 0h12a2 2 0 002-2v-4a2 2 0 00-2-2h-2.343M11 7.343l1.657-1.657a2 2 0 012.828 0l2.829 2.829a2 2 0 010 2.828l-8.486 8.485M7 17h.01" />
82
- </svg>
83
- </div>
84
- <h2 className="text-3xl font-bold text-primary">Color System</h2>
85
- </div>
86
-
87
- <div className="mb-8">
88
- <h3 className="text-2xl font-bold mb-4 text-gray-900">Primary Brand Colors</h3>
89
- <div className="grid md:grid-cols-3 gap-6">
90
- <div className="card">
91
- <div className="h-32 bg-primary rounded-lg mb-4 flex items-center justify-center">
92
- <span className="text-white font-bold text-lg">Primary</span>
93
- </div>
94
- <h4 className="font-bold mb-2">Primary Blue-Purple</h4>
95
- <p className="text-sm text-gray-600 mb-2"><strong>Hex:</strong> #4A3ECD</p>
96
- <p className="text-sm text-gray-600 mb-2"><strong>RGB:</strong> 74, 62, 205</p>
97
- <p className="text-sm text-gray-700">
98
- Represents the OSSA hub/standard. Use for primary actions, links, and key UI elements.
99
- </p>
100
- </div>
101
-
102
- <div className="card">
103
- <div className="h-32 bg-secondary rounded-lg mb-4 flex items-center justify-center">
104
- <span className="text-white font-bold text-lg">Secondary</span>
105
- </div>
106
- <h4 className="font-bold mb-2">Secondary Cyan-Blue</h4>
107
- <p className="text-sm text-gray-600 mb-2"><strong>Hex:</strong> #1CB9ED</p>
108
- <p className="text-sm text-gray-600 mb-2"><strong>RGB:</strong> 28, 185, 237</p>
109
- <p className="text-sm text-gray-700">
110
- Represents agent nodes. Use for secondary actions, accents, and complementary elements.
111
- </p>
112
- </div>
113
-
114
- <div className="card">
115
- <div className="h-32 bg-gradient-to-br from-secondary via-primary to-accent rounded-lg mb-4 flex items-center justify-center">
116
- <span className="text-white font-bold text-lg">Gradient</span>
117
- </div>
118
- <h4 className="font-bold mb-2">Brand Gradient</h4>
119
- <p className="text-sm text-gray-600 mb-2"><strong>From:</strong> #4A3ECD</p>
120
- <p className="text-sm text-gray-600 mb-2"><strong>To:</strong> #1CB9ED</p>
121
- <p className="text-sm text-gray-700">
122
- Use for hero sections, backgrounds, and prominent visual elements.
123
- </p>
124
- </div>
125
- </div>
126
- </div>
127
-
128
- <div className="mb-8">
129
- <h3 className="text-2xl font-bold mb-4 text-gray-900">Semantic Colors</h3>
130
- <div className="grid md:grid-cols-4 gap-4">
131
- <div className="card">
132
- <div className="h-24 bg-success rounded-lg mb-3"></div>
133
- <h4 className="font-bold mb-1">Success</h4>
134
- <p className="text-sm text-gray-600">#10b981 (muted)</p>
135
- <p className="text-xs text-gray-500 mt-1">Use: <code className="bg-gray-100 px-1 rounded">bg-success</code> or <code className="bg-gray-100 px-1 rounded">text-success</code></p>
136
- </div>
137
- <div className="card">
138
- <div className="h-24 bg-warning rounded-lg mb-3"></div>
139
- <h4 className="font-bold mb-1">Warning</h4>
140
- <p className="text-sm text-gray-600">#f59e0b (muted)</p>
141
- <p className="text-xs text-gray-500 mt-1">Use: <code className="bg-gray-100 px-1 rounded">bg-warning</code> or <code className="bg-gray-100 px-1 rounded">text-warning</code></p>
142
- </div>
143
- <div className="card">
144
- <div className="h-24 bg-error rounded-lg mb-3"></div>
145
- <h4 className="font-bold mb-1">Error</h4>
146
- <p className="text-sm text-gray-600">#ef4444 (muted)</p>
147
- <p className="text-xs text-gray-500 mt-1">Use: <code className="bg-gray-100 px-1 rounded">bg-error</code> or <code className="bg-gray-100 px-1 rounded">text-error</code></p>
148
- </div>
149
- <div className="card">
150
- <div className="h-24 bg-info rounded-lg mb-3"></div>
151
- <h4 className="font-bold mb-1">Info</h4>
152
- <p className="text-sm text-gray-600">#06b6d4 (muted)</p>
153
- <p className="text-xs text-gray-500 mt-1">Use: <code className="bg-gray-100 px-1 rounded">bg-info</code> or <code className="bg-gray-100 px-1 rounded">text-info</code></p>
154
- </div>
155
- </div>
156
- </div>
157
-
158
- <div className="card bg-gray-50">
159
- <h4 className="font-bold mb-3 text-gray-900">Color Usage Guidelines</h4>
160
- <ul className="space-y-2 text-gray-700">
161
- <li><strong>Primary (#4A3ECD):</strong> Main CTAs, links, headings, borders for primary sections</li>
162
- <li><strong>Secondary (#1CB9ED):</strong> Secondary CTAs, accents, complementary borders, highlights</li>
163
- <li><strong>Accent (#9060EA):</strong> Purple accent for highlights and special elements</li>
164
- <li><strong>Gradients:</strong> Hero sections, card backgrounds (use subtle opacity: /10, /20, /30)</li>
165
- <li><strong>Neutral Grays:</strong> Body text (gray-700), borders (gray-300), backgrounds (gray-50, gray-100)</li>
166
- <li><strong>Semantic Colors:</strong> Use muted semantic colors (success, warning, error, info) for status indicators. All defined in <code className="bg-gray-200 px-1 rounded">styles/_variables.scss</code>.</li>
167
- <li><strong>Centralized System:</strong> All colors are defined in <code className="bg-gray-200 px-1 rounded">styles/_variables.scss</code> as SCSS variables. Update colors in ONE place! The SCSS variables are compiled to CSS variables and exposed via Tailwind classes.</li>
168
- <li><strong>Usage:</strong> Use <code className="bg-gray-200 px-1 rounded">bg-success</code>, <code className="bg-gray-200 px-1 rounded">bg-warning</code>, <code className="bg-gray-200 px-1 rounded">bg-error</code>, <code className="bg-gray-200 px-1 rounded">bg-info</code> for backgrounds, or with opacity like <code className="bg-gray-200 px-1 rounded">bg-success/20</code></li>
169
- <li><strong>Update Colors:</strong> Edit <code className="bg-gray-200 px-1 rounded">styles/_variables.scss</code> to change any color. Restart dev server after changes.</li>
170
- <li><strong>Avoid:</strong> Random color assignments. Use brand colors or semantic colors with purpose.</li>
171
- </ul>
172
- </div>
173
- </section>
174
-
175
- {/* Typography */}
176
- <section className="mb-16">
177
- <div className="flex items-center mb-8">
178
- <div className="w-12 h-12 bg-gradient-to-br from-secondary via-primary to-accent rounded-lg flex items-center justify-center mr-4">
179
- <svg className="w-6 h-6 text-white" fill="none" stroke="currentColor" viewBox="0 0 24 24">
180
- <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M4 6h16M4 12h16M4 18h7" />
181
- </svg>
182
- </div>
183
- <h2 className="text-3xl font-bold text-primary">Typography</h2>
184
- </div>
185
-
186
- <div className="grid md:grid-cols-2 gap-8">
187
- <div className="card">
188
- <h3 className="text-xl font-bold mb-4 text-gray-900">Font Families</h3>
189
- <div className="space-y-4">
190
- <div>
191
- <p className="font-semibold mb-2">Body & Headings</p>
192
- <p className="text-lg" style={{ fontFamily: 'Inter, system-ui, sans-serif' }}>
193
- Inter, system-ui, -apple-system, sans-serif
194
- </p>
195
- <p className="text-sm text-gray-600 mt-2">
196
- Used for all body text, headings, and UI elements. Clean, modern, highly readable.
197
- </p>
198
- </div>
199
- <div>
200
- <p className="font-semibold mb-2">Code & Monospace</p>
201
- <p className="text-lg font-mono">
202
- JetBrains Mono, Menlo, Monaco, Courier New, monospace
203
- </p>
204
- <p className="text-sm text-gray-600 mt-2">
205
- Used for code blocks, inline code, and technical content.
206
- </p>
207
- </div>
208
- </div>
209
- </div>
210
-
211
- <div className="card">
212
- <h3 className="text-xl font-bold mb-4 text-gray-900">Type Scale</h3>
213
- <div className="space-y-3">
214
- <div>
215
- <h1 className="text-5xl font-bold text-gray-900 mb-1">Heading 1</h1>
216
- <p className="text-sm text-gray-600">text-5xl (3rem) - Hero titles</p>
217
- </div>
218
- <div>
219
- <h2 className="text-3xl font-bold text-gray-900 mb-1">Heading 2</h2>
220
- <p className="text-sm text-gray-600">text-3xl (1.875rem) - Section titles</p>
221
- </div>
222
- <div>
223
- <h3 className="text-2xl font-bold text-gray-900 mb-1">Heading 3</h3>
224
- <p className="text-sm text-gray-600">text-2xl (1.5rem) - Subsection titles</p>
225
- </div>
226
- <div>
227
- <h4 className="text-xl font-bold text-gray-900 mb-1">Heading 4</h4>
228
- <p className="text-sm text-gray-600">text-xl (1.25rem) - Card titles</p>
229
- </div>
230
- <div>
231
- <p className="text-base text-gray-700 mb-1">Body Text</p>
232
- <p className="text-sm text-gray-600">text-base (1rem) - Default body</p>
233
- </div>
234
- <div>
235
- <p className="text-sm text-gray-700 mb-1">Small Text</p>
236
- <p className="text-xs text-gray-600">text-sm (0.875rem) - Captions, metadata</p>
237
- </div>
238
- </div>
239
- </div>
240
- </div>
241
- </section>
242
-
243
- {/* Components */}
244
- <section className="mb-16">
245
- <div className="flex items-center mb-8">
246
- <div className="w-12 h-12 bg-gradient-to-br from-secondary via-primary to-accent rounded-lg flex items-center justify-center mr-4">
247
- <svg className="w-6 h-6 text-white" fill="none" stroke="currentColor" viewBox="0 0 24 24">
248
- <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M19 11H5m14 0a2 2 0 012 2v6a2 2 0 01-2 2H5a2 2 0 01-2-2v-6a2 2 0 012-2m14 0V9a2 2 0 00-2-2M5 11V9a2 2 0 012-2m0 0V5a2 2 0 012-2h6a2 2 0 012 2v2M7 7h10" />
249
- </svg>
250
- </div>
251
- <h2 className="text-3xl font-bold text-primary">Components</h2>
252
- </div>
253
-
254
- <div className="space-y-8">
255
- {/* Buttons */}
256
- <div className="card">
257
- <h3 className="text-xl font-bold mb-4 text-gray-900">Buttons</h3>
258
- <div className="space-y-4">
259
- <div className="flex flex-wrap gap-4">
260
- <button className="bg-primary text-white px-6 py-3 rounded-lg font-medium hover:opacity-90 transition-opacity">
261
- Primary Button
262
- </button>
263
- <button className="bg-secondary text-white px-6 py-3 rounded-lg font-medium hover:opacity-90 transition-opacity">
264
- Secondary Button
265
- </button>
266
- <button className="border-2 border-primary text-primary px-6 py-3 rounded-lg font-medium hover:bg-primary hover:text-white transition-colors">
267
- Outline Button
268
- </button>
269
- </div>
270
- <div className="bg-gray-50 rounded-lg p-4">
271
- <p className="text-sm text-gray-700">
272
- <strong>Usage:</strong> Primary buttons for main actions, secondary for alternative actions, outline for less prominent actions.
273
- Always use brand colors (primary/secondary) or semantic colors (success/warning/error).
274
- </p>
275
- </div>
276
- </div>
277
- </div>
278
-
279
- {/* Cards */}
280
- <div className="card">
281
- <h3 className="text-xl font-bold mb-4 text-gray-900">Cards</h3>
282
- <div className="grid md:grid-cols-3 gap-4 mb-4">
283
- <div className="bg-white rounded-lg shadow-md p-6 border border-gray-300">
284
- <h4 className="font-bold mb-2">Standard Card</h4>
285
- <p className="text-sm text-gray-600">Default card style</p>
286
- </div>
287
- <div className="bg-gradient-to-br from-primary/10 to-secondary/10 rounded-lg shadow-md p-6 border-2 border-primary">
288
- <h4 className="font-bold mb-2 text-primary">Highlighted Card</h4>
289
- <p className="text-sm text-gray-600">For important content</p>
290
- </div>
291
- <div className="bg-white rounded-lg shadow-md p-6 border-l-4 border-primary hover:shadow-lg transition-shadow">
292
- <h4 className="font-bold mb-2">Interactive Card</h4>
293
- <p className="text-sm text-gray-600">With hover effect</p>
294
- </div>
295
- </div>
296
- <div className="bg-gray-50 rounded-lg p-4">
297
- <p className="text-sm text-gray-700">
298
- <strong>Usage:</strong> Use standard cards for content sections. Use highlighted cards for featured/important content.
299
- Use colored left borders (border-l-4) to indicate category or importance.
300
- </p>
301
- </div>
302
- </div>
303
-
304
- {/* Hero Sections */}
305
- <div className="card">
306
- <h3 className="text-xl font-bold mb-4 text-gray-900">Hero Sections</h3>
307
- <div className="bg-gradient-to-br from-secondary via-primary to-accent text-white rounded-lg p-8 mb-4">
308
- <div className="text-center">
309
- <div className="inline-flex items-center justify-center w-16 h-16 bg-white/20 backdrop-blur-sm rounded-full mb-4">
310
- <svg className="w-8 h-8" fill="none" stroke="currentColor" viewBox="0 0 24 24">
311
- <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z" />
312
- </svg>
313
- </div>
314
- <h2 className="text-4xl font-bold mb-2">Hero Section Title</h2>
315
- <p className="text-lg text-white/90">Hero section description text</p>
316
- </div>
317
- </div>
318
- <div className="bg-gray-50 rounded-lg p-4">
319
- <p className="text-sm text-gray-700">
320
- <strong>Usage:</strong> All major pages should start with a hero section using the brand gradient.
321
- Include an icon badge, title, and descriptive text. Use white text on gradient backgrounds.
322
- </p>
323
- </div>
324
- </div>
325
-
326
- {/* Accordions */}
327
- <div className="card">
328
- <h3 className="text-xl font-bold mb-4 text-gray-900">Accordions</h3>
329
- <div className="space-y-2">
330
- <div className="bg-white rounded-lg border-l-4 border-primary shadow-md">
331
- <button className="w-full flex items-center justify-between p-4 text-left hover:bg-gray-50">
332
- <h4 className="font-bold text-gray-900">Accordion Item (Open)</h4>
333
- <svg className="w-5 h-5 text-gray-600 rotate-180" fill="none" stroke="currentColor" viewBox="0 0 24 24">
334
- <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M19 9l-7 7-7-7" />
335
- </svg>
336
- </button>
337
- <div className="px-4 pb-4 border-t border-gray-200">
338
- <div className="pt-4 text-gray-700">
339
- Accordion content goes here. Use for collapsible sections with related content.
340
- </div>
341
- </div>
342
- </div>
343
- <div className="bg-white rounded-lg border-l-4 border-secondary shadow-md">
344
- <button className="w-full flex items-center justify-between p-4 text-left hover:bg-gray-50">
345
- <h4 className="font-bold text-gray-900">Accordion Item (Closed)</h4>
346
- <svg className="w-5 h-5 text-gray-600" fill="none" stroke="currentColor" viewBox="0 0 24 24">
347
- <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M19 9l-7 7-7-7" />
348
- </svg>
349
- </button>
350
- </div>
351
- </div>
352
- <div className="bg-gray-50 rounded-lg p-4 mt-4">
353
- <p className="text-sm text-gray-700">
354
- <strong>Usage:</strong> Use accordions for organizing long-form content. Alternate between primary and secondary border colors.
355
- First item should be open by default.
356
- </p>
357
- </div>
358
- </div>
359
- </div>
360
- </section>
361
-
362
- {/* Layout Patterns */}
363
- <section className="mb-16">
364
- <div className="flex items-center mb-8">
365
- <div className="w-12 h-12 bg-gradient-to-br from-secondary via-primary to-accent rounded-lg flex items-center justify-center mr-4">
366
- <svg className="w-6 h-6 text-white" fill="none" stroke="currentColor" viewBox="0 0 24 24">
367
- <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M4 5a1 1 0 011-1h14a1 1 0 011 1v2a1 1 0 01-1 1H5a1 1 0 01-1-1V5zM4 13a1 1 0 011-1h6a1 1 0 011 1v6a1 1 0 01-1 1H5a1 1 0 01-1-1v-6zM16 13a1 1 0 011-1h2a1 1 0 011 1v6a1 1 0 01-1 1h-2a1 1 0 01-1-1v-6z" />
368
- </svg>
369
- </div>
370
- <h2 className="text-3xl font-bold text-primary">Layout Patterns</h2>
371
- </div>
372
-
373
- <div className="grid md:grid-cols-2 gap-8">
374
- <div className="card">
375
- <h3 className="text-xl font-bold mb-4 text-gray-900">Page Structure</h3>
376
- <div className="space-y-3 text-gray-700">
377
- <div className="border-l-4 border-primary pl-4">
378
- <p className="font-semibold">1. Hero Section</p>
379
- <p className="text-sm text-gray-600">Gradient background, icon, title, description</p>
380
- </div>
381
- <div className="border-l-4 border-secondary pl-4">
382
- <p className="font-semibold">2. Content Sections</p>
383
- <p className="text-sm text-gray-600">Cards, grids, accordions, content blocks</p>
384
- </div>
385
- <div className="border-l-4 border-gray-300 pl-4">
386
- <p className="font-semibold">3. Call-to-Action</p>
387
- <p className="text-sm text-gray-600">Links to playground, examples, docs</p>
388
- </div>
389
- </div>
390
- </div>
391
-
392
- <div className="card">
393
- <h3 className="text-xl font-bold mb-4 text-gray-900">Section Headers</h3>
394
- <div className="space-y-4">
395
- <div className="flex items-center">
396
- <div className="w-10 h-10 bg-gradient-to-br from-secondary via-primary to-accent rounded-lg flex items-center justify-center mr-3">
397
- <svg className="w-5 h-5 text-white" fill="none" stroke="currentColor" viewBox="0 0 24 24">
398
- <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z" />
399
- </svg>
400
- </div>
401
- <h3 className="text-2xl font-bold text-primary">Section Title</h3>
402
- </div>
403
- <p className="text-sm text-gray-600">
404
- All major sections should have an icon badge (gradient background) and colored heading.
405
- Use primary color for main sections, secondary for subsections.
406
- </p>
407
- </div>
408
- </div>
409
- </div>
410
- </section>
411
-
412
- {/* Best Practices */}
413
- <section className="mb-16">
414
- <div className="flex items-center mb-8">
415
- <div className="w-12 h-12 bg-gradient-to-br from-secondary via-primary to-accent rounded-lg flex items-center justify-center mr-4">
416
- <svg className="w-6 h-6 text-white" fill="none" stroke="currentColor" viewBox="0 0 24 24">
417
- <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z" />
418
- </svg>
419
- </div>
420
- <h2 className="text-3xl font-bold text-primary">Best Practices</h2>
421
- </div>
422
-
423
- <div className="grid md:grid-cols-2 gap-6">
424
- <div className="card border-l-4 border-green-500">
425
- <h3 className="text-lg font-bold mb-3 text-gray-900">✅ Do</h3>
426
- <ul className="space-y-2 text-gray-700 text-sm">
427
- <li>• Use brand colors (primary/secondary) consistently</li>
428
- <li>• Start pages with gradient hero sections</li>
429
- <li>• Use cards for content organization</li>
430
- <li>• Include icon badges with section headers</li>
431
- <li>• Use accordions for long-form content</li>
432
- <li>• Maintain consistent spacing (gap-4, gap-6, gap-8)</li>
433
- <li>• Use semantic colors for status indicators</li>
434
- <li>• Keep text readable (gray-700 for body, gray-900 for headings)</li>
435
- </ul>
436
- </div>
437
-
438
- <div className="card border-l-4 border-red-500">
439
- <h3 className="text-lg font-bold mb-3 text-gray-900">❌ Don't</h3>
440
- <ul className="space-y-2 text-gray-700 text-sm">
441
- <li>• Use random colors without purpose</li>
442
- <li>• Mix too many colors in one section</li>
443
- <li>• Use emojis in component titles (icons only)</li>
444
- <li>• Create pages without hero sections</li>
445
- <li>• Use inconsistent spacing</li>
446
- <li>• Overuse gradients (use subtle opacity)</li>
447
- <li>• Use colors that clash with brand colors</li>
448
- <li>• Make text too small (minimum text-base for body)</li>
449
- </ul>
450
- </div>
451
- </div>
452
- </section>
453
-
454
- {/* Code Examples */}
455
- <section className="mb-16">
456
- <div className="flex items-center mb-8">
457
- <div className="w-12 h-12 bg-gradient-to-br from-secondary via-primary to-accent rounded-lg flex items-center justify-center mr-4">
458
- <svg className="w-6 h-6 text-white" fill="none" stroke="currentColor" viewBox="0 0 24 24">
459
- <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M10 20l4-16m4 4l4 4-4 4M6 16l-4-4 4-4" />
460
- </svg>
461
- </div>
462
- <h2 className="text-3xl font-bold text-primary">Code Examples</h2>
463
- </div>
464
-
465
- <div className="card">
466
- <h3 className="text-xl font-bold mb-4 text-gray-900">Hero Section Template</h3>
467
- <pre className="bg-gray-900 text-green-400 p-4 rounded-lg overflow-x-auto text-sm font-mono">
468
- {`<div className="bg-gradient-to-br from-primary via-accent to-secondary text-white py-16 px-4">
469
- <div className="container mx-auto max-w-6xl text-center">
470
- <div className="inline-flex items-center justify-center w-20 h-20 bg-white/20 backdrop-blur-sm rounded-full mb-6">
471
- <svg className="w-10 h-10" fill="none" stroke="currentColor" viewBox="0 0 24 24">
472
- {/* Icon */}
473
- </svg>
474
- </div>
475
- <h1 className="text-5xl font-bold mb-4">Page Title</h1>
476
- <p className="text-xl text-white/90 mb-2">Description</p>
477
- </div>
478
- </div>`}
479
- </pre>
480
- </div>
481
- </section>
482
-
483
- {/* Resources */}
484
- <section className="mb-8">
485
- <div className="card bg-gradient-to-br from-primary/10 to-secondary/10 border-2 border-primary">
486
- <h2 className="text-2xl font-bold mb-4 text-gray-900">Additional Resources</h2>
487
- <div className="grid md:grid-cols-2 gap-4">
488
- <div>
489
- <h3 className="font-semibold mb-2 text-gray-900">Component Files</h3>
490
- <ul className="space-y-1 text-sm text-gray-700">
491
- <li>• <code className="bg-gray-200 px-2 py-1 rounded">components/layout/Header.tsx</code></li>
492
- <li>• <code className="bg-gray-200 px-2 py-1 rounded">components/layout/Footer.tsx</code></li>
493
- <li>• <code className="bg-gray-200 px-2 py-1 rounded">components/Logo.tsx</code></li>
494
- </ul>
495
- </div>
496
- <div>
497
- <h3 className="font-semibold mb-2 text-gray-900">Reference Pages</h3>
498
- <ul className="space-y-1 text-sm text-gray-700">
499
- <li>• <Link href="/schema" className="text-primary hover:underline">Schema Page</Link></li>
500
- <li>• <Link href="/specification" className="text-primary hover:underline">Specification Page</Link></li>
501
- <li>• <Link href="/docs" className="text-primary hover:underline">Docs Page</Link></li>
502
- </ul>
503
- </div>
504
- </div>
505
- </div>
506
- </section>
507
- </div>
508
- </>
509
- );
510
- }
511
-