@bluefly/openstandardagents 0.2.7 → 0.2.8

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 (277) hide show
  1. package/.devfile.yaml +1 -1
  2. package/.env.example +1 -1
  3. package/.version.json +2 -2
  4. package/.wiki-config.json +24 -0
  5. package/CHANGELOG.md +11 -18
  6. package/CODEOWNERS +75 -0
  7. package/CONTRIBUTING.md +1 -1
  8. package/README.md +171 -243
  9. package/dist/index.d.ts +1 -0
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +2 -0
  12. package/dist/index.js.map +1 -1
  13. package/dist/repositories/schema.repository.d.ts +6 -1
  14. package/dist/repositories/schema.repository.d.ts.map +1 -1
  15. package/dist/repositories/schema.repository.js +49 -27
  16. package/dist/repositories/schema.repository.js.map +1 -1
  17. package/dist/services/migration.service.d.ts +4 -3
  18. package/dist/services/migration.service.d.ts.map +1 -1
  19. package/dist/services/migration.service.js +11 -10
  20. package/dist/services/migration.service.js.map +1 -1
  21. package/dist/services/release-automation/release.service.js +1 -1
  22. package/dist/services/release-automation/release.service.js.map +1 -1
  23. package/dist/services/release-automation/schemas/release.schema.js +1 -1
  24. package/dist/services/runtime/claude/claude-adapter.js +1 -1
  25. package/dist/services/runtime/claude/claude-adapter.js.map +1 -1
  26. package/dist/spec/v0.2.8/CHANGELOG.md +401 -0
  27. package/dist/spec/v0.2.8/README.md +72 -0
  28. package/dist/spec/v0.2.8/migrations/v0.2.3-to-v0.2.4.md +599 -0
  29. package/dist/spec/v0.2.8/migrations/v0.2.5-RC-to-v0.2.6.md +65 -0
  30. package/dist/spec/v0.2.8/migrations/v0.2.6-to-v0.2.8.md +81 -0
  31. 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
  32. package/dist/spec/v0.2.8/ossa-0.2.8.yaml +581 -0
  33. package/dist/types/index.d.ts +3 -2
  34. package/dist/types/index.d.ts.map +1 -1
  35. package/dist/utils/index.d.ts +6 -0
  36. package/dist/utils/index.d.ts.map +1 -0
  37. package/dist/utils/index.js +6 -0
  38. package/dist/utils/index.js.map +1 -0
  39. package/dist/utils/version.d.ts +68 -0
  40. package/dist/utils/version.d.ts.map +1 -0
  41. package/dist/utils/version.js +156 -0
  42. package/dist/utils/version.js.map +1 -0
  43. package/eslint-report.json +1 -0
  44. package/examples/adk-integration/code-review-workflow.yml +1 -1
  45. package/examples/adk-integration/customer-support.yml +1 -1
  46. package/examples/adk-integration/data-pipeline.yml +1 -1
  47. package/examples/advanced/workflows/hybrid-model-strategy.yaml +1 -1
  48. package/examples/agent-manifests/critics/critic-agent.yaml +1 -1
  49. package/examples/agent-manifests/governors/governor-agent.yaml +1 -1
  50. package/examples/agent-manifests/integrators/integrator-agent.yaml +1 -1
  51. package/examples/agent-manifests/judges/judge-agent.yaml +1 -1
  52. package/examples/agent-manifests/monitors/monitor-agent.yaml +1 -1
  53. package/examples/agent-manifests/orchestrators/orchestrator-agent.yaml +1 -1
  54. package/examples/agent-manifests/sample-compliant-agent.yaml +1 -1
  55. package/examples/agent-manifests/workers/worker-agent.yaml +1 -1
  56. package/examples/anthropic/claude-assistant.ossa.json +1 -1
  57. package/examples/autogen/multi-agent.ossa.json +1 -1
  58. package/examples/claude-code/code-reviewer.ossa.yaml +78 -0
  59. package/examples/claude-code/ossa-validator.ossa.yaml +80 -0
  60. package/examples/common_npm/agent-router.ossa.yaml +1 -0
  61. package/examples/common_npm/agent-router.v0.2.2.ossa.yaml +1 -1
  62. package/examples/crewai/research-team.ossa.json +1 -1
  63. package/examples/cursor/code-review-agent.ossa.json +1 -1
  64. package/examples/drupal/gitlab-ml-recommender.ossa.yaml +1 -0
  65. package/examples/drupal/gitlab-ml-recommender.v0.2.2.ossa.yaml +1 -1
  66. package/examples/extensions/drupal-v1.yml +1 -1
  67. package/examples/extensions/kagent-v1.yml +1 -1
  68. package/examples/getting-started/hello-world-complete.ossa.yaml +1 -1
  69. package/examples/integration-patterns/agent-to-agent-orchestration.ossa.yaml +4 -4
  70. package/examples/kagent/compliance-validator.ossa.yaml +1 -1
  71. package/examples/kagent/cost-optimizer.ossa.yaml +1 -1
  72. package/examples/kagent/documentation-agent.ossa.yaml +1 -1
  73. package/examples/kagent/k8s-troubleshooter-v1.ossa.yaml +1 -0
  74. package/examples/kagent/k8s-troubleshooter-v1.v0.2.2.ossa.yaml +1 -1
  75. package/examples/kagent/k8s-troubleshooter.ossa.yaml +1 -1
  76. package/examples/kagent/security-scanner.ossa.yaml +1 -1
  77. package/examples/langchain/chain-agent.ossa.json +1 -1
  78. package/examples/langflow/workflow-agent.ossa.json +1 -1
  79. package/examples/langgraph/state-machine-agent.ossa.json +1 -1
  80. package/examples/llamaindex/rag-agent.ossa.json +1 -1
  81. package/examples/migration-guides/from-langchain-to-ossa.yaml +4 -4
  82. package/examples/multi-agent/README.md +74 -0
  83. package/examples/multi-agent/conditional-router.ossa.yaml +42 -0
  84. package/examples/multi-agent/parallel-execution.ossa.yaml +54 -0
  85. package/examples/multi-agent/sequential-pipeline.ossa.yaml +45 -0
  86. package/examples/openai/basic-agent.ossa.yaml +1 -1
  87. package/examples/openai/multi-tool-agent.ossa.json +1 -1
  88. package/examples/openai/swarm-agent.ossa.json +1 -1
  89. package/examples/production/document-analyzer-openai.yml +1 -1
  90. package/examples/quickstart/support-agent.ossa.yaml +1 -1
  91. package/examples/spec-examples/audit-agent.yml +1 -1
  92. package/examples/spec-examples/chat-agent.yml +1 -1
  93. package/examples/spec-examples/compliance-agent.yml +1 -1
  94. package/examples/spec-examples/monitoring-agent.yml +1 -1
  95. package/examples/spec-examples/workflow-agent.yml +1 -1
  96. package/examples/templates/ossa-compliance.yaml +1 -1
  97. package/examples/vercel/edge-agent.ossa.json +1 -1
  98. package/gl-code-quality-report.json +62 -0
  99. package/llms-ctx-full.txt +39 -0
  100. package/llms-ctx.txt +39 -0
  101. package/llms.txt +47 -0
  102. package/package.json +3 -2
  103. package/scripts/eslint-to-codequality.cjs +34 -0
  104. package/scripts/generate-llms-ctx.sh +17 -0
  105. package/scripts/generate-schema-docs.ts +31 -10
  106. package/scripts/sync-version.js +4 -12
  107. package/scripts/validate-schema.ts +2 -1
  108. package/spec/v0.2.8/CHANGELOG.md +401 -0
  109. package/spec/v0.2.8/README.md +72 -0
  110. package/spec/v0.2.8/migrations/v0.2.3-to-v0.2.4.md +599 -0
  111. package/spec/v0.2.8/migrations/v0.2.5-RC-to-v0.2.6.md +65 -0
  112. package/spec/v0.2.8/migrations/v0.2.6-to-v0.2.8.md +81 -0
  113. package/{dist/spec/v0.2.6-dev/ossa-0.2.5.schema.json → spec/v0.2.8/ossa-0.2.8.schema.json} +1509 -52
  114. package/spec/v0.2.8/ossa-0.2.8.yaml +581 -0
  115. package/test-results/junit.xml +299 -0
  116. package/bin/validate-ossa-0.2.5-RC.ts +0 -244
  117. package/dist/spec/v0.2.6-dev/ossa-0.2.6-dev.schema.json +0 -1696
  118. package/scripts/lib/exec.ts +0 -37
  119. package/scripts/lib/file-ops.ts +0 -58
  120. package/scripts/lib/version.ts +0 -83
  121. package/spec/v0.2.6-dev/ossa-0.2.6-dev.schema.json +0 -1696
  122. package/website/.lighthouserc.ts +0 -24
  123. package/website/.prettierrc +0 -10
  124. package/website/DESIGN_SYSTEM_IMPLEMENTATION.md +0 -445
  125. package/website/Dockerfile +0 -30
  126. package/website/app/about/page.tsx +0 -304
  127. package/website/app/blog/[slug]/page.tsx +0 -208
  128. package/website/app/blog/page.tsx +0 -249
  129. package/website/app/design-guide/page.tsx +0 -511
  130. package/website/app/docs/[[...slug]]/page.tsx +0 -847
  131. package/website/app/docs/core-concepts/project-structure/page.tsx +0 -349
  132. package/website/app/ecosystem/page.tsx +0 -410
  133. package/website/app/examples/page.tsx +0 -133
  134. package/website/app/globals.scss +0 -370
  135. package/website/app/layout.tsx +0 -106
  136. package/website/app/license/page.tsx +0 -183
  137. package/website/app/not-found.tsx +0 -18
  138. package/website/app/page.tsx +0 -686
  139. package/website/app/page.tsx.bak +0 -679
  140. package/website/app/page.tsx.bak2 +0 -649
  141. package/website/app/playground/page.tsx +0 -487
  142. package/website/app/robots.ts +0 -19
  143. package/website/app/rss.xml/route.ts +0 -74
  144. package/website/app/schema/page.tsx +0 -1001
  145. package/website/app/sitemap.ts +0 -56
  146. package/website/app/specification/page.tsx +0 -287
  147. package/website/components/InstallCommand.tsx +0 -96
  148. package/website/components/Logo.tsx +0 -97
  149. package/website/components/StructuredData.tsx +0 -65
  150. package/website/components/docs/DocsSearch.tsx +0 -104
  151. package/website/components/docs/DocsSidebar.tsx +0 -155
  152. package/website/components/docs/MarkdownContent.tsx +0 -401
  153. package/website/components/docs/VersionSelector.tsx +0 -105
  154. package/website/components/examples/ExamplesViewer.tsx +0 -293
  155. package/website/components/layout/Footer.tsx +0 -116
  156. package/website/components/layout/Header.tsx +0 -172
  157. package/website/components/schema/SchemaComponentsAccordion.tsx +0 -84
  158. package/website/components/schema/SchemaExplorer.tsx +0 -213
  159. package/website/components/ui/Badge.tsx +0 -82
  160. package/website/components/ui/Button.tsx +0 -116
  161. package/website/components/ui/Card.tsx +0 -167
  162. package/website/components/ui/Checkbox.tsx +0 -141
  163. package/website/components/ui/Input.tsx +0 -169
  164. package/website/components/ui/Radio.tsx +0 -141
  165. package/website/components/ui/Select.tsx +0 -182
  166. package/website/components/ui/Tag.tsx +0 -158
  167. package/website/components/ui/Textarea.tsx +0 -195
  168. package/website/components/ui/index.ts +0 -11
  169. package/website/content/blog/OpenAPI-AI-Agents-Standard.md +0 -285
  170. package/website/content/blog/Why-Formal-Standards-Matter-Now.md +0 -198
  171. package/website/content/blog/gitlab-kubernetes-agent-ecosystem.md +0 -286
  172. package/website/content/blog/introducing-ossa-framework.md +0 -328
  173. package/website/content/blog/ossa-production-results.md +0 -279
  174. package/website/content/blog/welcome-to-ossa.md +0 -43
  175. package/website/content/blog/why-ai-agents-need-open-standard.md +0 -98
  176. package/website/content/docs/00-home.md +0 -153
  177. package/website/content/docs/adapters/openai-adapter.md +0 -693
  178. package/website/content/docs/agents/catalog.md +0 -28
  179. package/website/content/docs/aiflow-framework-integration-with-ossa.md +0 -107
  180. package/website/content/docs/api-reference/index.md +0 -38
  181. package/website/content/docs/api-reference/ossa-core-api.md +0 -634
  182. package/website/content/docs/api-reference/ossa-registry-api.md +0 -515
  183. package/website/content/docs/api-reference/unified-agent-gateway.md +0 -599
  184. package/website/content/docs/architecture/execution-flow.md +0 -335
  185. package/website/content/docs/architecture/multi-agent-systems.md +0 -737
  186. package/website/content/docs/architecture/overview.md +0 -121
  187. package/website/content/docs/architecture/stack-integration.md +0 -461
  188. package/website/content/docs/changelog.md +0 -246
  189. package/website/content/docs/cli-reference/index.md +0 -111
  190. package/website/content/docs/cli-reference/ossa-agents.md +0 -70
  191. package/website/content/docs/cli-reference/ossa-export.md +0 -56
  192. package/website/content/docs/cli-reference/ossa-generate.md +0 -66
  193. package/website/content/docs/cli-reference/ossa-gitlab-agent.md +0 -57
  194. package/website/content/docs/cli-reference/ossa-import.md +0 -56
  195. package/website/content/docs/cli-reference/ossa-init.md +0 -57
  196. package/website/content/docs/cli-reference/ossa-migrate.md +0 -62
  197. package/website/content/docs/cli-reference/ossa-run.md +0 -66
  198. package/website/content/docs/cli-reference/ossa-schema.md +0 -57
  199. package/website/content/docs/cli-reference/ossa-setup.md +0 -57
  200. package/website/content/docs/cli-reference/ossa-validate.md +0 -66
  201. package/website/content/docs/configuration/index.md +0 -97
  202. package/website/content/docs/contributing.md +0 -599
  203. package/website/content/docs/deployment/github-mirroring.md +0 -924
  204. package/website/content/docs/documentation.md +0 -100
  205. package/website/content/docs/ecosystem/framework-support.md +0 -1361
  206. package/website/content/docs/ecosystem/overview.md +0 -366
  207. package/website/content/docs/errors/index.md +0 -10
  208. package/website/content/docs/examples/aiflow-framework-integration-with-ossa.md +0 -107
  209. package/website/content/docs/examples/catalog.md +0 -300
  210. package/website/content/docs/for-audiences/students-researchers.md +0 -122
  211. package/website/content/docs/getting-started/index.md +0 -92
  212. package/website/content/docs/getting-started/installation.md +0 -155
  213. package/website/content/docs/getting-started/running-agents.md +0 -309
  214. package/website/content/docs/getting-started.md +0 -91
  215. package/website/content/docs/integrations/aiflow.md +0 -104
  216. package/website/content/docs/integrations/drupal.md +0 -105
  217. package/website/content/docs/migration-guides/agent-schema-comparison.md +0 -232
  218. package/website/content/docs/migration-guides/anthropic-mcp-to-ossa.md +0 -1750
  219. package/website/content/docs/migration-guides/crewai-to-ossa.md +0 -274
  220. package/website/content/docs/migration-guides/drupal-eca-to-ossa.md +0 -2017
  221. package/website/content/docs/migration-guides/general-agent-schema.yml +0 -247
  222. package/website/content/docs/migration-guides/index.md +0 -133
  223. package/website/content/docs/migration-guides/langchain-to-ossa.md +0 -1714
  224. package/website/content/docs/migration-guides/langflow-to-ossa.md +0 -2075
  225. package/website/content/docs/migration-guides/migration-manifest.json +0 -64
  226. package/website/content/docs/migration-guides/openai-to-ossa.md +0 -1202
  227. package/website/content/docs/openapi-extensions/examples.md +0 -550
  228. package/website/content/docs/openapi-extensions/index.md +0 -551
  229. package/website/content/docs/openapi-extensions/operation-extensions.md +0 -457
  230. package/website/content/docs/openapi-extensions/root-extensions.md +0 -410
  231. package/website/content/docs/ossa-compliant-badge.md +0 -251
  232. package/website/content/docs/pre-release/index.md +0 -175
  233. package/website/content/docs/quick-reference.md +0 -17
  234. package/website/content/docs/readme.md +0 -35
  235. package/website/content/docs/releases/v0.2.6.md +0 -99
  236. package/website/content/docs/schema-reference/agent-capabilities.md +0 -50
  237. package/website/content/docs/schema-reference/agent-id.md +0 -52
  238. package/website/content/docs/schema-reference/agent-name.md +0 -50
  239. package/website/content/docs/schema-reference/agent-role.md +0 -54
  240. package/website/content/docs/schema-reference/agent-spec.md +0 -406
  241. package/website/content/docs/schema-reference/agent-version.md +0 -50
  242. package/website/content/docs/schema-reference/autonomy.md +0 -568
  243. package/website/content/docs/schema-reference/constraints.md +0 -543
  244. package/website/content/docs/schema-reference/index.md +0 -45
  245. package/website/content/docs/schema-reference/llm-config.md +0 -445
  246. package/website/content/docs/schema-reference/observability.md +0 -654
  247. package/website/content/docs/schema-reference/ossa-manifest.md +0 -309
  248. package/website/content/docs/schema-reference/taxonomy.md +0 -509
  249. package/website/content/docs/schema-reference/tools.md +0 -628
  250. package/website/content/docs/templates/blog-post.md +0 -43
  251. package/website/content/docs/types-reference/index.md +0 -105
  252. package/website/content/docs/use-cases/00-index.md +0 -395
  253. package/website/content/docs/use-cases/cicd-code-review.md +0 -1236
  254. package/website/content/docs/use-cases/customer-support.md +0 -1234
  255. package/website/content/docs/use-cases/enterprise-compliance.md +0 -1208
  256. package/website/content/docs/use-cases/research-multi-agent.md +0 -1161
  257. package/website/content/docs/versioning.md +0 -288
  258. package/website/dev.sh +0 -53
  259. package/website/docker-compose.dev.yml +0 -36
  260. package/website/lib/version.ts +0 -35
  261. package/website/lib/versions.json +0 -103
  262. package/website/next.config.ts +0 -18
  263. package/website/nginx.conf +0 -32
  264. package/website/package-lock.json +0 -9679
  265. package/website/package.json +0 -59
  266. package/website/postcss.config.mjs +0 -9
  267. package/website/scripts/fetch-versions.js +0 -166
  268. package/website/scripts/generate-examples-index.js +0 -163
  269. package/website/scripts/merge-docs-to-wiki.ts +0 -207
  270. package/website/scripts/sync-version.js +0 -72
  271. package/website/scripts/sync-wiki.ts +0 -322
  272. package/website/scripts/upload-wiki.ts +0 -199
  273. package/website/styles/_spacing.scss +0 -453
  274. package/website/styles/_tokens.scss +0 -245
  275. package/website/styles/_typography.scss +0 -361
  276. package/website/styles/_variables.scss +0 -287
  277. package/website/tailwind.config.ts +0 -170
@@ -1,361 +0,0 @@
1
- // OSSA Design System - Typography System
2
- // Complete typography hierarchy with responsive scales
3
-
4
- // ============================================================================
5
- // FONT FAMILIES
6
- // ============================================================================
7
-
8
- $font-sans: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
9
- $font-mono: 'JetBrains Mono', 'Fira Code', Menlo, Monaco, 'Courier New', monospace;
10
- $font-display: 'Inter', system-ui, -apple-system, sans-serif;
11
- $font-body: 'Inter', system-ui, -apple-system, sans-serif;
12
- $font-heading: 'Inter', system-ui, -apple-system, sans-serif;
13
-
14
- // ============================================================================
15
- // FONT WEIGHTS
16
- // ============================================================================
17
-
18
- $font-weight-thin: 100;
19
- $font-weight-extralight: 200;
20
- $font-weight-light: 300;
21
- $font-weight-normal: 400;
22
- $font-weight-medium: 500;
23
- $font-weight-semibold: 600;
24
- $font-weight-bold: 700;
25
- $font-weight-extrabold: 800;
26
- $font-weight-black: 900;
27
-
28
- // ============================================================================
29
- // FONT SIZES (Desktop)
30
- // ============================================================================
31
-
32
- // Display level (Hero text)
33
- $font-size-display: 4.5rem; // 72px
34
- $line-height-display: 1.1;
35
- $font-weight-display: $font-weight-extrabold;
36
-
37
- // Heading levels
38
- $font-size-h1: 3.5rem; // 56px
39
- $line-height-h1: 1.2;
40
- $font-weight-h1: $font-weight-bold;
41
-
42
- $font-size-h2: 2.5rem; // 40px
43
- $line-height-h2: 1.3;
44
- $font-weight-h2: $font-weight-bold;
45
-
46
- $font-size-h3: 2rem; // 32px
47
- $line-height-h3: 1.4;
48
- $font-weight-h3: $font-weight-semibold;
49
-
50
- $font-size-h4: 1.5rem; // 24px
51
- $line-height-h4: 1.5;
52
- $font-weight-h4: $font-weight-semibold;
53
-
54
- $font-size-h5: 1.25rem; // 20px
55
- $line-height-h5: 1.5;
56
- $font-weight-h5: $font-weight-semibold;
57
-
58
- $font-size-h6: 1.125rem; // 18px
59
- $line-height-h6: 1.5;
60
- $font-weight-h6: $font-weight-semibold;
61
-
62
- // Body text
63
- $font-size-base: 1rem; // 16px
64
- $line-height-base: 1.6;
65
- $font-weight-base: $font-weight-normal;
66
-
67
- $font-size-lg: 1.125rem; // 18px
68
- $line-height-lg: 1.6;
69
-
70
- $font-size-sm: 0.875rem; // 14px
71
- $line-height-sm: 1.5;
72
-
73
- $font-size-xs: 0.75rem; // 12px
74
- $line-height-xs: 1.4;
75
-
76
- // ============================================================================
77
- // RESPONSIVE FONT SIZES (Mobile)
78
- // ============================================================================
79
-
80
- // Mobile adjustments (reduce by ~20-30% for smaller screens)
81
- $font-size-display-mobile: 3rem; // 48px (from 72px)
82
- $font-size-h1-mobile: 2.5rem; // 40px (from 56px)
83
- $font-size-h2-mobile: 2rem; // 32px (from 40px)
84
- $font-size-h3-mobile: 1.75rem; // 28px (from 32px)
85
- $font-size-h4-mobile: 1.375rem; // 22px (from 24px)
86
- $font-size-h5-mobile: 1.125rem; // 18px (from 20px)
87
- $font-size-h6-mobile: 1rem; // 16px (from 18px)
88
-
89
- // ============================================================================
90
- // LETTER SPACING
91
- // ============================================================================
92
-
93
- $letter-spacing-tighter: -0.05em;
94
- $letter-spacing-tight: -0.025em;
95
- $letter-spacing-normal: 0;
96
- $letter-spacing-wide: 0.025em;
97
- $letter-spacing-wider: 0.05em;
98
- $letter-spacing-widest: 0.1em;
99
-
100
- // ============================================================================
101
- // TYPOGRAPHY MIXINS
102
- // ============================================================================
103
-
104
- // Display text (Hero sections)
105
- @mixin text-display {
106
- font-family: $font-display;
107
- font-size: $font-size-display;
108
- line-height: $line-height-display;
109
- font-weight: $font-weight-display;
110
- letter-spacing: $letter-spacing-tight;
111
-
112
- @media (max-width: 768px) {
113
- font-size: $font-size-display-mobile;
114
- }
115
- }
116
-
117
- // Heading 1
118
- @mixin text-h1 {
119
- font-family: $font-heading;
120
- font-size: $font-size-h1;
121
- line-height: $line-height-h1;
122
- font-weight: $font-weight-h1;
123
- letter-spacing: $letter-spacing-tight;
124
-
125
- @media (max-width: 768px) {
126
- font-size: $font-size-h1-mobile;
127
- }
128
- }
129
-
130
- // Heading 2
131
- @mixin text-h2 {
132
- font-family: $font-heading;
133
- font-size: $font-size-h2;
134
- line-height: $line-height-h2;
135
- font-weight: $font-weight-h2;
136
- letter-spacing: $letter-spacing-tight;
137
-
138
- @media (max-width: 768px) {
139
- font-size: $font-size-h2-mobile;
140
- }
141
- }
142
-
143
- // Heading 3
144
- @mixin text-h3 {
145
- font-family: $font-heading;
146
- font-size: $font-size-h3;
147
- line-height: $line-height-h3;
148
- font-weight: $font-weight-h3;
149
- letter-spacing: $letter-spacing-normal;
150
-
151
- @media (max-width: 768px) {
152
- font-size: $font-size-h3-mobile;
153
- }
154
- }
155
-
156
- // Heading 4
157
- @mixin text-h4 {
158
- font-family: $font-heading;
159
- font-size: $font-size-h4;
160
- line-height: $line-height-h4;
161
- font-weight: $font-weight-h4;
162
- letter-spacing: $letter-spacing-normal;
163
-
164
- @media (max-width: 768px) {
165
- font-size: $font-size-h4-mobile;
166
- }
167
- }
168
-
169
- // Heading 5
170
- @mixin text-h5 {
171
- font-family: $font-heading;
172
- font-size: $font-size-h5;
173
- line-height: $line-height-h5;
174
- font-weight: $font-weight-h5;
175
- letter-spacing: $letter-spacing-normal;
176
-
177
- @media (max-width: 768px) {
178
- font-size: $font-size-h5-mobile;
179
- }
180
- }
181
-
182
- // Heading 6
183
- @mixin text-h6 {
184
- font-family: $font-heading;
185
- font-size: $font-size-h6;
186
- line-height: $line-height-h6;
187
- font-weight: $font-weight-h6;
188
- letter-spacing: $letter-spacing-normal;
189
-
190
- @media (max-width: 768px) {
191
- font-size: $font-size-h6-mobile;
192
- }
193
- }
194
-
195
- // Body text
196
- @mixin text-body {
197
- font-family: $font-body;
198
- font-size: $font-size-base;
199
- line-height: $line-height-base;
200
- font-weight: $font-weight-base;
201
- letter-spacing: $letter-spacing-normal;
202
- }
203
-
204
- // Large body text
205
- @mixin text-body-lg {
206
- font-family: $font-body;
207
- font-size: $font-size-lg;
208
- line-height: $line-height-lg;
209
- font-weight: $font-weight-base;
210
- letter-spacing: $letter-spacing-normal;
211
- }
212
-
213
- // Small text
214
- @mixin text-sm {
215
- font-family: $font-body;
216
- font-size: $font-size-sm;
217
- line-height: $line-height-sm;
218
- font-weight: $font-weight-base;
219
- letter-spacing: $letter-spacing-normal;
220
- }
221
-
222
- // Extra small text
223
- @mixin text-xs {
224
- font-family: $font-body;
225
- font-size: $font-size-xs;
226
- line-height: $line-height-xs;
227
- font-weight: $font-weight-base;
228
- letter-spacing: $letter-spacing-wide;
229
- }
230
-
231
- // Code/monospace text
232
- @mixin text-code {
233
- font-family: $font-mono;
234
- font-size: 0.875em; // Slightly smaller than surrounding text
235
- line-height: 1.5;
236
- font-weight: $font-weight-normal;
237
- }
238
-
239
- // ============================================================================
240
- // UTILITY CLASSES
241
- // ============================================================================
242
-
243
- .text-display {
244
- @include text-display;
245
- }
246
-
247
- .text-h1 {
248
- @include text-h1;
249
- }
250
-
251
- .text-h2 {
252
- @include text-h2;
253
- }
254
-
255
- .text-h3 {
256
- @include text-h3;
257
- }
258
-
259
- .text-h4 {
260
- @include text-h4;
261
- }
262
-
263
- .text-h5 {
264
- @include text-h5;
265
- }
266
-
267
- .text-h6 {
268
- @include text-h6;
269
- }
270
-
271
- .text-body {
272
- @include text-body;
273
- }
274
-
275
- .text-body-lg {
276
- @include text-body-lg;
277
- }
278
-
279
- .text-sm {
280
- @include text-sm;
281
- }
282
-
283
- .text-xs {
284
- @include text-xs;
285
- }
286
-
287
- .text-code {
288
- @include text-code;
289
- }
290
-
291
- // Font weight utilities
292
- .font-thin { font-weight: $font-weight-thin; }
293
- .font-extralight { font-weight: $font-weight-extralight; }
294
- .font-light { font-weight: $font-weight-light; }
295
- .font-normal { font-weight: $font-weight-normal; }
296
- .font-medium { font-weight: $font-weight-medium; }
297
- .font-semibold { font-weight: $font-weight-semibold; }
298
- .font-bold { font-weight: $font-weight-bold; }
299
- .font-extrabold { font-weight: $font-weight-extrabold; }
300
- .font-black { font-weight: $font-weight-black; }
301
-
302
- // Letter spacing utilities
303
- .tracking-tighter { letter-spacing: $letter-spacing-tighter; }
304
- .tracking-tight { letter-spacing: $letter-spacing-tight; }
305
- .tracking-normal { letter-spacing: $letter-spacing-normal; }
306
- .tracking-wide { letter-spacing: $letter-spacing-wide; }
307
- .tracking-wider { letter-spacing: $letter-spacing-wider; }
308
- .tracking-widest { letter-spacing: $letter-spacing-widest; }
309
-
310
- // Text transform utilities
311
- .uppercase { text-transform: uppercase; }
312
- .lowercase { text-transform: lowercase; }
313
- .capitalize { text-transform: capitalize; }
314
- .normal-case { text-transform: none; }
315
-
316
- // Text decoration utilities
317
- .underline { text-decoration: underline; }
318
- .line-through { text-decoration: line-through; }
319
- .no-underline { text-decoration: none; }
320
-
321
- // Text alignment utilities
322
- .text-left { text-align: left; }
323
- .text-center { text-align: center; }
324
- .text-right { text-align: right; }
325
- .text-justify { text-align: justify; }
326
-
327
- // Truncate text
328
- .truncate {
329
- overflow: hidden;
330
- text-overflow: ellipsis;
331
- white-space: nowrap;
332
- }
333
-
334
- // Line clamp utilities
335
- .line-clamp-1 {
336
- display: -webkit-box;
337
- -webkit-line-clamp: 1;
338
- -webkit-box-orient: vertical;
339
- overflow: hidden;
340
- }
341
-
342
- .line-clamp-2 {
343
- display: -webkit-box;
344
- -webkit-line-clamp: 2;
345
- -webkit-box-orient: vertical;
346
- overflow: hidden;
347
- }
348
-
349
- .line-clamp-3 {
350
- display: -webkit-box;
351
- -webkit-line-clamp: 3;
352
- -webkit-box-orient: vertical;
353
- overflow: hidden;
354
- }
355
-
356
- .line-clamp-4 {
357
- display: -webkit-box;
358
- -webkit-line-clamp: 4;
359
- -webkit-box-orient: vertical;
360
- overflow: hidden;
361
- }
@@ -1,287 +0,0 @@
1
- // OSSA Design System - Centralized Color Variables
2
- // Update colors here to change them site-wide
3
- // Based on Brand Guide v1.0.0 (Issue #44)
4
-
5
- // ============================================================================
6
- // PRIMARY BRAND COLOR - Deep Purple (#4A3ECD)
7
- // ============================================================================
8
- $ossa-primary-50: #f5f4fd;
9
- $ossa-primary-100: #e8e5fa;
10
- $ossa-primary-200: #d4cff5;
11
- $ossa-primary-300: #b5abee;
12
- $ossa-primary-400: #8f7ee4;
13
- $ossa-primary-500: #4A3ECD; // Base - Main blue-purple
14
- $ossa-primary-600: #3d2fb8;
15
- $ossa-primary-700: #322598;
16
- $ossa-primary-800: #2a1f7a;
17
- $ossa-primary-900: #241f65;
18
- $ossa-primary-950: #15113a;
19
-
20
- // Legacy alias for backward compatibility
21
- $ossa-primary: $ossa-primary-500;
22
-
23
- // ============================================================================
24
- // SECONDARY BRAND COLOR - Cyan Blue (#1CB9ED)
25
- // ============================================================================
26
- $ossa-secondary-50: #ecfbff;
27
- $ossa-secondary-100: #d1f5fe;
28
- $ossa-secondary-200: #a8e9fd;
29
- $ossa-secondary-300: #6fd8fa;
30
- $ossa-secondary-400: #2ec0f5;
31
- $ossa-secondary-500: #1CB9ED; // Base - Cyan-blue
32
- $ossa-secondary-600: #0a9dd1;
33
- $ossa-secondary-700: #087da9;
34
- $ossa-secondary-800: #0c6688;
35
- $ossa-secondary-900: #105570;
36
- $ossa-secondary-950: #08374a;
37
-
38
- // Legacy alias for backward compatibility
39
- $ossa-secondary: $ossa-secondary-500;
40
-
41
- // ============================================================================
42
- // ACCENT COLOR - Light Purple (#9060EA)
43
- // ============================================================================
44
- $ossa-accent-50: #f7f4fe;
45
- $ossa-accent-100: #ede9fd;
46
- $ossa-accent-200: #ddd4fb;
47
- $ossa-accent-300: #c5b3f8;
48
- $ossa-accent-400: #a887f3;
49
- $ossa-accent-500: #9060EA; // Base - Purple accent
50
- $ossa-accent-600: #7c3aed;
51
- $ossa-accent-700: #6b28d9;
52
- $ossa-accent-800: #5923b8;
53
- $ossa-accent-900: #4b1f97;
54
- $ossa-accent-950: #2d0f5c;
55
-
56
- // Legacy alias for backward compatibility
57
- $ossa-accent: $ossa-accent-500;
58
-
59
- // ============================================================================
60
- // DARK PURPLE - For contrast and depth (#2D1B69)
61
- // ============================================================================
62
- $ossa-dark-purple-50: #f5f3f9;
63
- $ossa-dark-purple-100: #ebe7f3;
64
- $ossa-dark-purple-200: #d9d1e9;
65
- $ossa-dark-purple-300: #bfafd9;
66
- $ossa-dark-purple-400: #9f85c5;
67
- $ossa-dark-purple-500: #7d5db0;
68
- $ossa-dark-purple-600: #654497;
69
- $ossa-dark-purple-700: #53367d;
70
- $ossa-dark-purple-800: #462e68;
71
- $ossa-dark-purple-900: #2D1B69; // Base - Dark purple for contrast
72
- $ossa-dark-purple-950: #1a0f3d;
73
-
74
- // Alias
75
- $ossa-dark-purple: $ossa-dark-purple-900;
76
-
77
- // ============================================================================
78
- // SEMANTIC COLORS - Success, Warning, Error, Info
79
- // ============================================================================
80
-
81
- // Success - Green
82
- $ossa-success-50: #ecfdf5;
83
- $ossa-success-100: #d1fae5;
84
- $ossa-success-200: #a7f3d0;
85
- $ossa-success-300: #6ee7b7;
86
- $ossa-success-400: #34d399;
87
- $ossa-success-500: #10b981; // Base
88
- $ossa-success-600: #059669;
89
- $ossa-success-700: #047857;
90
- $ossa-success-800: #065f46;
91
- $ossa-success-900: #064e3b;
92
- $ossa-success-950: #022c22;
93
-
94
- // Legacy alias
95
- $ossa-success: $ossa-success-500;
96
-
97
- // Warning - Amber
98
- $ossa-warning-50: #fffbeb;
99
- $ossa-warning-100: #fef3c7;
100
- $ossa-warning-200: #fde68a;
101
- $ossa-warning-300: #fcd34d;
102
- $ossa-warning-400: #fbbf24;
103
- $ossa-warning-500: #f59e0b; // Base
104
- $ossa-warning-600: #d97706;
105
- $ossa-warning-700: #b45309;
106
- $ossa-warning-800: #92400e;
107
- $ossa-warning-900: #78350f;
108
- $ossa-warning-950: #451a03;
109
-
110
- // Legacy alias
111
- $ossa-warning: $ossa-warning-500;
112
-
113
- // Error - Red
114
- $ossa-error-50: #fef2f2;
115
- $ossa-error-100: #fee2e2;
116
- $ossa-error-200: #fecaca;
117
- $ossa-error-300: #fca5a5;
118
- $ossa-error-400: #f87171;
119
- $ossa-error-500: #ef4444; // Base
120
- $ossa-error-600: #dc2626;
121
- $ossa-error-700: #b91c1c;
122
- $ossa-error-800: #991b1b;
123
- $ossa-error-900: #7f1d1d;
124
- $ossa-error-950: #450a0a;
125
-
126
- // Legacy alias
127
- $ossa-error: $ossa-error-500;
128
-
129
- // Info - Cyan
130
- $ossa-info-50: #ecfeff;
131
- $ossa-info-100: #cffafe;
132
- $ossa-info-200: #a5f3fc;
133
- $ossa-info-300: #67e8f9;
134
- $ossa-info-400: #22d3ee;
135
- $ossa-info-500: #06b6d4; // Base
136
- $ossa-info-600: #0891b2;
137
- $ossa-info-700: #0e7490;
138
- $ossa-info-800: #155e75;
139
- $ossa-info-900: #164e63;
140
- $ossa-info-950: #083344;
141
-
142
- // Legacy alias
143
- $ossa-info: $ossa-info-500;
144
-
145
- // ============================================================================
146
- // NEUTRAL COLORS - Grays
147
- // ============================================================================
148
- $ossa-gray-50: #f9fafb;
149
- $ossa-gray-100: #f3f4f6;
150
- $ossa-gray-200: #e5e7eb;
151
- $ossa-gray-300: #d1d5db;
152
- $ossa-gray-400: #9ca3af;
153
- $ossa-gray-500: #6b7280;
154
- $ossa-gray-600: #4b5563;
155
- $ossa-gray-700: #374151;
156
- $ossa-gray-800: #1f2937;
157
- $ossa-gray-900: #111827;
158
- $ossa-gray-950: #030712;
159
-
160
- // Special colors
161
- $ossa-white: #ffffff;
162
- $ossa-black: #000000;
163
- $ossa-dark: #1A1A2E; // From brand guide
164
-
165
- // ============================================================================
166
- // FOCUS RING COLORS - For Accessibility
167
- // ============================================================================
168
- $ossa-focus-primary: rgba(74, 62, 205, 0.3); // primary/30
169
- $ossa-focus-secondary: rgba(28, 185, 237, 0.3); // secondary/30
170
- $ossa-focus-accent: rgba(144, 96, 234, 0.3); // accent/30
171
-
172
- // Gradients - Lightest blue to darkest purple, blue spans more
173
- // Order: secondary (lightest blue #1CB9ED) -> primary (blue-purple #4A3ECD) -> accent (darkest purple #9060EA)
174
- $gradient-brand: linear-gradient(135deg, $ossa-secondary 0%, $ossa-secondary 40%, $ossa-primary 70%, $ossa-accent 100%);
175
- $gradient-hero: linear-gradient(135deg, $ossa-secondary 0%, $ossa-secondary 35%, $ossa-primary 65%, $ossa-accent 100%);
176
- $gradient-button: linear-gradient(135deg, $ossa-secondary 0%, $ossa-secondary 45%, $ossa-primary 75%, $ossa-accent 100%);
177
-
178
- // ============================================================================
179
- // TYPOGRAPHY SYSTEM - Based on Issue #44 Brand Guide
180
- // ============================================================================
181
-
182
- // Font Families
183
- $font-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
184
- $font-mono: 'JetBrains Mono', 'Fira Code', 'Consolas', monospace;
185
-
186
- // Type Scale - Exact specifications from Issue #44
187
- $text-display: 4.5rem; // 72px - Display/Hero
188
- $text-h1: 3.5rem; // 56px - H1
189
- $text-h2: 2.5rem; // 40px - H2
190
- $text-h3: 2rem; // 32px - H3
191
- $text-h4: 1.5rem; // 24px - H4
192
- $text-h5: 1.25rem; // 20px - H5
193
- $text-h6: 1.125rem; // 18px - H6
194
- $text-body: 1rem; // 16px - Body
195
- $text-small: 0.875rem; // 14px - Small
196
-
197
- // Line Heights - From Issue #44
198
- $leading-display: 1.1;
199
- $leading-h1: 1.2;
200
- $leading-h2: 1.3;
201
- $leading-h3: 1.4;
202
- $leading-h4: 1.5;
203
- $leading-h5: 1.5;
204
- $leading-h6: 1.5;
205
- $leading-body: 1.6;
206
- $leading-small: 1.5;
207
-
208
- // Letter Spacing - From Issue #44
209
- $tracking-display: -0.02em;
210
- $tracking-h1: -0.01em;
211
- $tracking-normal: 0;
212
-
213
- // Font Weights
214
- $font-normal: 400;
215
- $font-medium: 500;
216
- $font-semibold: 600;
217
- $font-bold: 700;
218
- $font-extrabold: 800;
219
-
220
- // ============================================================================
221
- // SPACING & LAYOUT SYSTEM - Based on 4px grid
222
- // ============================================================================
223
-
224
- // Spacing Scale
225
- $space-1: 0.25rem; // 4px
226
- $space-2: 0.5rem; // 8px
227
- $space-3: 0.75rem; // 12px
228
- $space-4: 1rem; // 16px
229
- $space-5: 1.25rem; // 20px
230
- $space-6: 1.5rem; // 24px
231
- $space-8: 2rem; // 32px
232
- $space-10: 2.5rem; // 40px
233
- $space-12: 3rem; // 48px
234
- $space-16: 4rem; // 64px
235
- $space-20: 5rem; // 80px
236
- $space-24: 6rem; // 96px
237
-
238
- // Section Padding (Vertical Rhythm)
239
- $section-padding-sm: $space-12; // 48px - py-12
240
- $section-padding-md: $space-16; // 64px - py-16
241
- $section-padding-lg: $space-20; // 80px - py-20
242
- $section-padding-xl: $space-24; // 96px - py-24
243
-
244
- // Container Max Widths
245
- $container-sm: 640px; // max-w-sm
246
- $container-md: 768px; // max-w-md
247
- $container-lg: 1024px; // max-w-lg
248
- $container-xl: 1280px; // max-w-xl
249
- $container-2xl: 1536px; // max-w-2xl
250
- $container-4xl: 56rem; // max-w-4xl (896px)
251
- $container-6xl: 72rem; // max-w-6xl (1152px)
252
- $container-7xl: 80rem; // max-w-7xl (1280px)
253
-
254
- // Grid Gaps
255
- $gap-sm: $space-4; // 16px - gap-4
256
- $gap-md: $space-6; // 24px - gap-6
257
- $gap-lg: $space-8; // 32px - gap-8
258
-
259
- // Border Radius
260
- $radius-sm: 0.25rem; // 4px
261
- $radius-md: 0.5rem; // 8px
262
- $radius-lg: 0.75rem; // 12px
263
- $radius-xl: 1rem; // 16px
264
- $radius-2xl: 1.5rem; // 24px
265
- $radius-full: 9999px; // Full rounded
266
-
267
- // Shadows
268
- $shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.04);
269
- $shadow-md: 0 2px 8px rgba(0, 0, 0, 0.04);
270
- $shadow-lg: 0 8px 24px rgba(0, 0, 0, 0.08);
271
- $shadow-xl: 0 16px 48px rgba(0, 0, 0, 0.12);
272
- $shadow-brand: 0 8px 16px rgba(74, 62, 205, 0.3);
273
-
274
- // Transitions
275
- $transition-fast: 150ms ease;
276
- $transition-base: 200ms ease;
277
- $transition-slow: 300ms ease;
278
-
279
- // ============================================================================
280
- // CODE SYNTAX HIGHLIGHTING
281
- // ============================================================================
282
- $code-bg: #1e1e1e;
283
- $code-text: #d4d4d4;
284
- $code-keyword: #569cd6;
285
- $code-string: #ce9178;
286
- $code-comment: #6a9955;
287
-