getrelay 0.1.0

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 (145) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +40 -0
  3. package/bin/relay.js +362 -0
  4. package/design-md/airbnb/DESIGN.md +545 -0
  5. package/design-md/airbnb/README.md +5 -0
  6. package/design-md/airtable/DESIGN.md +554 -0
  7. package/design-md/airtable/README.md +5 -0
  8. package/design-md/apple/DESIGN.md +562 -0
  9. package/design-md/apple/README.md +5 -0
  10. package/design-md/binance/DESIGN.md +634 -0
  11. package/design-md/binance/README.md +5 -0
  12. package/design-md/bmw/DESIGN.md +544 -0
  13. package/design-md/bmw/README.md +5 -0
  14. package/design-md/bmw-m/DESIGN.md +503 -0
  15. package/design-md/bmw-m/README.md +5 -0
  16. package/design-md/bugatti/DESIGN.md +454 -0
  17. package/design-md/bugatti/README.md +5 -0
  18. package/design-md/cal/DESIGN.md +542 -0
  19. package/design-md/cal/README.md +5 -0
  20. package/design-md/claude/DESIGN.md +589 -0
  21. package/design-md/claude/README.md +5 -0
  22. package/design-md/clay/DESIGN.md +541 -0
  23. package/design-md/clay/README.md +5 -0
  24. package/design-md/clickhouse/DESIGN.md +544 -0
  25. package/design-md/clickhouse/README.md +5 -0
  26. package/design-md/cohere/DESIGN.md +451 -0
  27. package/design-md/cohere/README.md +5 -0
  28. package/design-md/coinbase/DESIGN.md +570 -0
  29. package/design-md/coinbase/README.md +5 -0
  30. package/design-md/composio/DESIGN.md +506 -0
  31. package/design-md/composio/README.md +5 -0
  32. package/design-md/cursor/DESIGN.md +537 -0
  33. package/design-md/cursor/README.md +5 -0
  34. package/design-md/elevenlabs/DESIGN.md +504 -0
  35. package/design-md/elevenlabs/README.md +5 -0
  36. package/design-md/expo/DESIGN.md +526 -0
  37. package/design-md/expo/README.md +5 -0
  38. package/design-md/ferrari/DESIGN.md +531 -0
  39. package/design-md/ferrari/README.md +5 -0
  40. package/design-md/figma/DESIGN.md +578 -0
  41. package/design-md/figma/README.md +5 -0
  42. package/design-md/framer/DESIGN.md +544 -0
  43. package/design-md/framer/README.md +5 -0
  44. package/design-md/hashicorp/DESIGN.md +575 -0
  45. package/design-md/hashicorp/README.md +5 -0
  46. package/design-md/ibm/DESIGN.md +550 -0
  47. package/design-md/ibm/README.md +5 -0
  48. package/design-md/intercom/DESIGN.md +546 -0
  49. package/design-md/intercom/README.md +5 -0
  50. package/design-md/kraken/DESIGN.md +125 -0
  51. package/design-md/kraken/README.md +5 -0
  52. package/design-md/lamborghini/DESIGN.md +288 -0
  53. package/design-md/lamborghini/README.md +5 -0
  54. package/design-md/linear.app/DESIGN.md +548 -0
  55. package/design-md/linear.app/README.md +5 -0
  56. package/design-md/lovable/DESIGN.md +298 -0
  57. package/design-md/lovable/README.md +5 -0
  58. package/design-md/mastercard/DESIGN.md +365 -0
  59. package/design-md/mastercard/README.md +5 -0
  60. package/design-md/meta/DESIGN.md +683 -0
  61. package/design-md/meta/README.md +5 -0
  62. package/design-md/minimax/DESIGN.md +746 -0
  63. package/design-md/minimax/README.md +5 -0
  64. package/design-md/mintlify/DESIGN.md +852 -0
  65. package/design-md/mintlify/README.md +5 -0
  66. package/design-md/miro/DESIGN.md +825 -0
  67. package/design-md/miro/README.md +5 -0
  68. package/design-md/mistral.ai/DESIGN.md +773 -0
  69. package/design-md/mistral.ai/README.md +5 -0
  70. package/design-md/mongodb/DESIGN.md +767 -0
  71. package/design-md/mongodb/README.md +5 -0
  72. package/design-md/nike/DESIGN.md +575 -0
  73. package/design-md/nike/README.md +5 -0
  74. package/design-md/notion/DESIGN.md +821 -0
  75. package/design-md/notion/README.md +5 -0
  76. package/design-md/nvidia/DESIGN.md +640 -0
  77. package/design-md/nvidia/README.md +5 -0
  78. package/design-md/ollama/DESIGN.md +539 -0
  79. package/design-md/ollama/README.md +5 -0
  80. package/design-md/opencode.ai/DESIGN.md +521 -0
  81. package/design-md/opencode.ai/README.md +5 -0
  82. package/design-md/pinterest/DESIGN.md +597 -0
  83. package/design-md/pinterest/README.md +5 -0
  84. package/design-md/playstation/DESIGN.md +661 -0
  85. package/design-md/playstation/README.md +5 -0
  86. package/design-md/posthog/DESIGN.md +690 -0
  87. package/design-md/posthog/README.md +5 -0
  88. package/design-md/raycast/DESIGN.md +669 -0
  89. package/design-md/raycast/README.md +5 -0
  90. package/design-md/renault/DESIGN.md +589 -0
  91. package/design-md/renault/README.md +5 -0
  92. package/design-md/replicate/DESIGN.md +616 -0
  93. package/design-md/replicate/README.md +5 -0
  94. package/design-md/resend/DESIGN.md +585 -0
  95. package/design-md/resend/README.md +5 -0
  96. package/design-md/revolut/DESIGN.md +636 -0
  97. package/design-md/revolut/README.md +5 -0
  98. package/design-md/runwayml/DESIGN.md +244 -0
  99. package/design-md/runwayml/README.md +5 -0
  100. package/design-md/sanity/DESIGN.md +357 -0
  101. package/design-md/sanity/README.md +5 -0
  102. package/design-md/sentry/DESIGN.md +551 -0
  103. package/design-md/sentry/README.md +5 -0
  104. package/design-md/shopify/DESIGN.md +516 -0
  105. package/design-md/shopify/README.md +5 -0
  106. package/design-md/slack/DESIGN.md +482 -0
  107. package/design-md/spacex/DESIGN.md +363 -0
  108. package/design-md/spacex/README.md +5 -0
  109. package/design-md/spotify/DESIGN.md +246 -0
  110. package/design-md/spotify/README.md +5 -0
  111. package/design-md/starbucks/DESIGN.md +580 -0
  112. package/design-md/starbucks/README.md +5 -0
  113. package/design-md/stripe/DESIGN.md +487 -0
  114. package/design-md/stripe/README.md +5 -0
  115. package/design-md/supabase/DESIGN.md +462 -0
  116. package/design-md/supabase/README.md +5 -0
  117. package/design-md/superhuman/DESIGN.md +448 -0
  118. package/design-md/superhuman/README.md +5 -0
  119. package/design-md/tesla/DESIGN.md +286 -0
  120. package/design-md/tesla/README.md +5 -0
  121. package/design-md/theverge/DESIGN.md +339 -0
  122. package/design-md/theverge/README.md +5 -0
  123. package/design-md/together.ai/DESIGN.md +633 -0
  124. package/design-md/together.ai/README.md +5 -0
  125. package/design-md/uber/DESIGN.md +636 -0
  126. package/design-md/uber/README.md +5 -0
  127. package/design-md/vercel/DESIGN.md +736 -0
  128. package/design-md/vercel/README.md +5 -0
  129. package/design-md/vodafone/DESIGN.md +538 -0
  130. package/design-md/vodafone/README.md +5 -0
  131. package/design-md/voltagent/DESIGN.md +521 -0
  132. package/design-md/voltagent/README.md +5 -0
  133. package/design-md/warp/DESIGN.md +526 -0
  134. package/design-md/warp/README.md +5 -0
  135. package/design-md/webflow/DESIGN.md +588 -0
  136. package/design-md/webflow/README.md +5 -0
  137. package/design-md/wired/DESIGN.md +497 -0
  138. package/design-md/wired/README.md +5 -0
  139. package/design-md/wise/DESIGN.md +544 -0
  140. package/design-md/wise/README.md +5 -0
  141. package/design-md/x.ai/DESIGN.md +465 -0
  142. package/design-md/x.ai/README.md +5 -0
  143. package/design-md/zapier/DESIGN.md +537 -0
  144. package/design-md/zapier/README.md +5 -0
  145. package/package.json +31 -0
@@ -0,0 +1,506 @@
1
+ ---
2
+ version: alpha
3
+ name: Composio
4
+ description: A developer-tools brand for AI-agent tool integration whose marketing surfaces lean into a dark, technical aesthetic with a single deep-electric-blue voltage (`#0007cd`). The page floor is near-black (`#0f0f0f`); cards float above on subtle gray-tinted surfaces. abcDiatype carries display and body in a single sans family with weights 400-600. The brand's strongest visual signature is a four-pane terminal-style mockup (a 2×2 grid of dark code/output panels) with a central blue spotlight glow — used as the homepage hero anchor.
5
+
6
+ colors:
7
+ primary: "#0007cd"
8
+ primary-active: "#0005a3"
9
+ primary-glow: "#1a26ff"
10
+ ink: "#ffffff"
11
+ body: "#a8a8a8"
12
+ body-strong: "#ffffff"
13
+ muted: "#888888"
14
+ muted-soft: "#666666"
15
+ hairline: "#222222"
16
+ hairline-soft: "#1a1a1a"
17
+ hairline-strong: "#333333"
18
+ canvas: "#0f0f0f"
19
+ canvas-deep: "#000000"
20
+ surface-card: "#181818"
21
+ surface-card-elevated: "#222222"
22
+ surface-strong: "#2a2a2a"
23
+ on-primary: "#ffffff"
24
+ on-dark: "#ffffff"
25
+ accent-cyan: "#00d4ff"
26
+ accent-violet: "#7b3aed"
27
+ semantic-error: "#ff4d4d"
28
+ semantic-success: "#33d17a"
29
+
30
+ typography:
31
+ display-mega:
32
+ fontFamily: "'abcDiatype', ui-sans-serif, system-ui, sans-serif"
33
+ fontSize: 72px
34
+ fontWeight: 500
35
+ lineHeight: 1.05
36
+ letterSpacing: -2.16px
37
+ display-xl:
38
+ fontFamily: "'abcDiatype', ui-sans-serif, system-ui, sans-serif"
39
+ fontSize: 56px
40
+ fontWeight: 500
41
+ lineHeight: 1.05
42
+ letterSpacing: -1.68px
43
+ display-lg:
44
+ fontFamily: "'abcDiatype', ui-sans-serif, system-ui, sans-serif"
45
+ fontSize: 44px
46
+ fontWeight: 500
47
+ lineHeight: 1.1
48
+ letterSpacing: -1.32px
49
+ display-md:
50
+ fontFamily: "'abcDiatype', ui-sans-serif, system-ui, sans-serif"
51
+ fontSize: 32px
52
+ fontWeight: 500
53
+ lineHeight: 1.15
54
+ letterSpacing: -0.96px
55
+ display-sm:
56
+ fontFamily: "'abcDiatype', ui-sans-serif, system-ui, sans-serif"
57
+ fontSize: 24px
58
+ fontWeight: 500
59
+ lineHeight: 1.25
60
+ letterSpacing: -0.5px
61
+ title-md:
62
+ fontFamily: "'abcDiatype', ui-sans-serif, system-ui, sans-serif"
63
+ fontSize: 18px
64
+ fontWeight: 600
65
+ lineHeight: 1.4
66
+ letterSpacing: 0
67
+ title-sm:
68
+ fontFamily: "'abcDiatype', ui-sans-serif, system-ui, sans-serif"
69
+ fontSize: 16px
70
+ fontWeight: 600
71
+ lineHeight: 1.4
72
+ letterSpacing: 0
73
+ body-md:
74
+ fontFamily: "'abcDiatype', ui-sans-serif, system-ui, sans-serif"
75
+ fontSize: 16px
76
+ fontWeight: 400
77
+ lineHeight: 1.5
78
+ letterSpacing: 0
79
+ body-sm:
80
+ fontFamily: "'abcDiatype', ui-sans-serif, system-ui, sans-serif"
81
+ fontSize: 14px
82
+ fontWeight: 400
83
+ lineHeight: 1.5
84
+ letterSpacing: 0
85
+ caption:
86
+ fontFamily: "'abcDiatype', ui-sans-serif, system-ui, sans-serif"
87
+ fontSize: 13px
88
+ fontWeight: 400
89
+ lineHeight: 1.4
90
+ letterSpacing: 0
91
+ caption-uppercase:
92
+ fontFamily: "'abcDiatype', ui-sans-serif, system-ui, sans-serif"
93
+ fontSize: 11px
94
+ fontWeight: 600
95
+ lineHeight: 1.4
96
+ letterSpacing: 0.88px
97
+ textTransform: uppercase
98
+ code:
99
+ fontFamily: "'JetBrains Mono', 'Fira Code', monospace"
100
+ fontSize: 13px
101
+ fontWeight: 400
102
+ lineHeight: 1.5
103
+ letterSpacing: 0
104
+ button:
105
+ fontFamily: "'abcDiatype', ui-sans-serif, system-ui, sans-serif"
106
+ fontSize: 14px
107
+ fontWeight: 500
108
+ lineHeight: 1.0
109
+ letterSpacing: 0
110
+ nav-link:
111
+ fontFamily: "'abcDiatype', ui-sans-serif, system-ui, sans-serif"
112
+ fontSize: 14px
113
+ fontWeight: 500
114
+ lineHeight: 1.4
115
+ letterSpacing: 0
116
+
117
+ rounded:
118
+ none: 0px
119
+ xs: 4px
120
+ sm: 6px
121
+ md: 8px
122
+ lg: 12px
123
+ xl: 16px
124
+ pill: 9999px
125
+ full: 9999px
126
+
127
+ spacing:
128
+ xxs: 4px
129
+ xs: 8px
130
+ sm: 12px
131
+ base: 16px
132
+ md: 20px
133
+ lg: 24px
134
+ xl: 32px
135
+ xxl: 48px
136
+ section: 96px
137
+
138
+ components:
139
+ top-nav-dark:
140
+ backgroundColor: "{colors.canvas}"
141
+ textColor: "{colors.body-strong}"
142
+ typography: "{typography.nav-link}"
143
+ height: 64px
144
+ button-primary:
145
+ backgroundColor: "{colors.primary}"
146
+ textColor: "{colors.on-primary}"
147
+ typography: "{typography.button}"
148
+ rounded: "{rounded.md}"
149
+ padding: 10px 18px
150
+ height: 40px
151
+ button-primary-active:
152
+ backgroundColor: "{colors.primary-active}"
153
+ textColor: "{colors.on-primary}"
154
+ rounded: "{rounded.md}"
155
+ button-secondary-dark:
156
+ backgroundColor: "{colors.surface-card-elevated}"
157
+ textColor: "{colors.body-strong}"
158
+ typography: "{typography.button}"
159
+ rounded: "{rounded.md}"
160
+ padding: 10px 18px
161
+ height: 40px
162
+ button-outline:
163
+ backgroundColor: transparent
164
+ textColor: "{colors.body-strong}"
165
+ typography: "{typography.button}"
166
+ rounded: "{rounded.md}"
167
+ padding: 9px 17px
168
+ height: 40px
169
+ button-tertiary-text:
170
+ backgroundColor: transparent
171
+ textColor: "{colors.body}"
172
+ typography: "{typography.button}"
173
+ hero-band:
174
+ backgroundColor: "{colors.canvas}"
175
+ textColor: "{colors.body-strong}"
176
+ typography: "{typography.display-mega}"
177
+ padding: 96px
178
+ terminal-mockup-grid:
179
+ backgroundColor: "{colors.canvas-deep}"
180
+ textColor: "{colors.body-strong}"
181
+ typography: "{typography.code}"
182
+ rounded: "{rounded.xl}"
183
+ padding: 32px
184
+ terminal-pane:
185
+ backgroundColor: "{colors.surface-card}"
186
+ textColor: "{colors.body}"
187
+ typography: "{typography.code}"
188
+ rounded: "{rounded.lg}"
189
+ padding: 20px
190
+ feature-card:
191
+ backgroundColor: "{colors.surface-card}"
192
+ textColor: "{colors.body}"
193
+ typography: "{typography.title-md}"
194
+ rounded: "{rounded.xl}"
195
+ padding: 28px
196
+ toolkit-card:
197
+ backgroundColor: "{colors.surface-card}"
198
+ textColor: "{colors.body-strong}"
199
+ typography: "{typography.title-sm}"
200
+ rounded: "{rounded.lg}"
201
+ padding: 20px
202
+ toolkit-icon:
203
+ backgroundColor: "{colors.surface-card-elevated}"
204
+ rounded: "{rounded.md}"
205
+ size: 40px
206
+ spotlight-glow-card:
207
+ backgroundColor: "{colors.surface-card}"
208
+ textColor: "{colors.body-strong}"
209
+ typography: "{typography.display-md}"
210
+ rounded: "{rounded.xl}"
211
+ padding: 48px
212
+ code-block:
213
+ backgroundColor: "{colors.canvas-deep}"
214
+ textColor: "{colors.body}"
215
+ typography: "{typography.code}"
216
+ rounded: "{rounded.lg}"
217
+ padding: 20px
218
+ badge-pill:
219
+ backgroundColor: "{colors.surface-card-elevated}"
220
+ textColor: "{colors.body-strong}"
221
+ typography: "{typography.caption-uppercase}"
222
+ rounded: "{rounded.pill}"
223
+ padding: 4px 10px
224
+ text-input:
225
+ backgroundColor: "{colors.surface-card}"
226
+ textColor: "{colors.body-strong}"
227
+ typography: "{typography.body-md}"
228
+ rounded: "{rounded.md}"
229
+ padding: 12px 16px
230
+ height: 44px
231
+ search-input:
232
+ backgroundColor: "{colors.surface-card}"
233
+ textColor: "{colors.body-strong}"
234
+ typography: "{typography.body-md}"
235
+ rounded: "{rounded.md}"
236
+ padding: 10px 16px
237
+ height: 40px
238
+ cta-band-spotlight:
239
+ backgroundColor: "{colors.canvas}"
240
+ textColor: "{colors.body-strong}"
241
+ typography: "{typography.display-lg}"
242
+ padding: 96px
243
+ testimonial-card:
244
+ backgroundColor: "{colors.surface-card}"
245
+ textColor: "{colors.body}"
246
+ typography: "{typography.body-md}"
247
+ rounded: "{rounded.lg}"
248
+ padding: 24px
249
+ footer-dark:
250
+ backgroundColor: "{colors.canvas}"
251
+ textColor: "{colors.body}"
252
+ typography: "{typography.body-sm}"
253
+ padding: 64px 48px
254
+ footer-link:
255
+ backgroundColor: transparent
256
+ textColor: "{colors.body}"
257
+ typography: "{typography.body-sm}"
258
+ ---
259
+
260
+ ## Overview
261
+
262
+ Composio's marketing site reads like a serious developer-infrastructure brand — closer to Vercel or Stripe Docs in atmosphere than to a typical AI-tools startup. The base canvas is a near-black `{colors.canvas}` (#0f0f0f) holding white type and a single voltage of **deep electric blue** (`{colors.primary}` — #0007cd) carrying every primary CTA, brand wordmark, and atmospheric spotlight glow that backs the homepage hero.
263
+
264
+ Type runs **abcDiatype** as the single sans family across display, body, navigation, and captions. Display sits at weight 500 — confident but not bombastic. Code blocks and terminal mockups switch to JetBrains Mono.
265
+
266
+ The page rhythm is monolithic: dark canvas top to bottom with subtle elevation steps via card surfaces. The brand's strongest visual signature is a **four-pane terminal-style mockup** — a 2×2 grid of dark code/output panels with a central blue spotlight glow behind them.
267
+
268
+ **Key Characteristics:**
269
+ - Single accent: `{colors.primary}` (#0007cd) for primary CTAs, wordmark, spotlight glows.
270
+ - Single sans family: abcDiatype carries everything except code (JetBrains Mono).
271
+ - Dark monolithic canvas: `{colors.canvas}` runs top to bottom; depth from `{colors.surface-card}` and `{colors.surface-card-elevated}` brightness steps.
272
+ - Terminal-mockup hero: 2×2 grid of code/output panes is the brand signature.
273
+ - Compact pill geometry: CTAs sit at `{rounded.md}` (8px), not full pills — developer-tool dialect.
274
+ - Spotlight-glow atmospheric backdrop: a radial blue glow centered behind hero content.
275
+ - 96px section rhythm.
276
+
277
+ ## Colors
278
+
279
+ ### Brand & Accent
280
+ - **Composio Blue** (`{colors.primary}` — #0007cd): Primary CTAs, wordmark, spotlight glow center.
281
+ - **Composio Blue Active** (`{colors.primary-active}` — #0005a3): Press state.
282
+ - **Spotlight Glow Tone** (`{colors.primary-glow}` — #1a26ff): Brighter blue used inside radial atmospheric glows.
283
+ - **Accent Cyan** (`{colors.accent-cyan}` — #00d4ff): Sparingly on data-flow visualizations.
284
+ - **Accent Violet** (`{colors.accent-violet}` — #7b3aed): Inside specific product illustrations only.
285
+
286
+ ### Surface
287
+ - **Canvas** (`{colors.canvas}` — #0f0f0f): Page floor — near-black.
288
+ - **Canvas Deep** (`{colors.canvas-deep}` — #000000): Pure black for terminal mockup grids and code blocks.
289
+ - **Surface Card** (`{colors.surface-card}` — #181818): Default content card.
290
+ - **Surface Card Elevated** (`{colors.surface-card-elevated}` — #222222): Terminal panes, secondary buttons.
291
+ - **Surface Strong** (`{colors.surface-strong}` — #2a2a2a): Dropdown menus.
292
+
293
+ ### Hairlines
294
+ - **Hairline** (`{colors.hairline}` — #222222): Default 1px divider.
295
+ - **Hairline Soft** (`{colors.hairline-soft}` — #1a1a1a): Lighter divider.
296
+ - **Hairline Strong** (`{colors.hairline-strong}` — #333333): Stronger panel outline.
297
+
298
+ ### Text
299
+ - **Ink** (`{colors.ink}` — #ffffff): Display headlines.
300
+ - **Body** (`{colors.body}` — #a8a8a8): Default running-text — soft gray.
301
+ - **Body Strong** (`{colors.body-strong}` — #ffffff): Same as ink.
302
+ - **Muted** (`{colors.muted}` — #888888): Sub-titles, breadcrumbs.
303
+ - **Muted Soft** (`{colors.muted-soft}` — #666666): Disabled text.
304
+ - **On Primary** (`{colors.on-primary}` — #ffffff): White text on blue CTAs.
305
+
306
+ ### Semantic
307
+ - **Success** (`{colors.semantic-success}` — #33d17a): "Online", "active" indicators.
308
+ - **Error** (`{colors.semantic-error}` — #ff4d4d): Validation errors.
309
+
310
+ ## Typography
311
+
312
+ ### Font Family
313
+ The system runs **abcDiatype** (Lineto) across every text role. Code blocks switch to **JetBrains Mono**. Fallback: `ui-sans-serif, system-ui, sans-serif`.
314
+
315
+ ### Hierarchy
316
+
317
+ | Token | Size | Weight | Line Height | Letter Spacing | Use |
318
+ |---|---|---|---|---|---|
319
+ | `{typography.display-mega}` | 72px | 500 | 1.05 | -2.16px | Homepage hero h1 |
320
+ | `{typography.display-xl}` | 56px | 500 | 1.05 | -1.68px | Subsidiary heroes |
321
+ | `{typography.display-lg}` | 44px | 500 | 1.1 | -1.32px | Section heads |
322
+ | `{typography.display-md}` | 32px | 500 | 1.15 | -0.96px | Sub-section heads |
323
+ | `{typography.display-sm}` | 24px | 500 | 1.25 | -0.5px | Card group titles |
324
+ | `{typography.title-md}` | 18px | 600 | 1.4 | 0 | Component titles |
325
+ | `{typography.title-sm}` | 16px | 600 | 1.4 | 0 | Toolkit card titles |
326
+ | `{typography.body-md}` | 16px | 400 | 1.5 | 0 | Default body |
327
+ | `{typography.body-sm}` | 14px | 400 | 1.5 | 0 | Footer body |
328
+ | `{typography.caption}` | 13px | 400 | 1.4 | 0 | Photo captions |
329
+ | `{typography.caption-uppercase}` | 11px | 600 | 1.4 | 0.88px | Section labels, badge pills |
330
+ | `{typography.code}` | 13px | 400 | 1.5 | 0 | Code blocks — JetBrains Mono |
331
+ | `{typography.button}` | 14px | 500 | 1.0 | 0 | CTA pill labels |
332
+ | `{typography.nav-link}` | 14px | 500 | 1.4 | 0 | Top-nav menu |
333
+
334
+ ### Principles
335
+ - **Display weight stays at 500.** Confident but not display-bold.
336
+ - **abcDiatype across every role.** No display/body family split.
337
+ - **JetBrains Mono on every code surface.**
338
+
339
+ ### Note on Font Substitutes
340
+ abcDiatype is a Lineto licensed typeface. Open-source substitute: **Inter** at weight 500 with letter-spacing -1.5%.
341
+
342
+ ## Layout
343
+
344
+ ### Spacing System
345
+ - **Base unit:** 4px.
346
+ - **Tokens:** `{spacing.xxs}` 4px · `{spacing.xs}` 8px · `{spacing.sm}` 12px · `{spacing.base}` 16px · `{spacing.md}` 20px · `{spacing.lg}` 24px · `{spacing.xl}` 32px · `{spacing.xxl}` 48px · `{spacing.section}` 96px.
347
+ - **Section padding:** `{spacing.section}` (96px) for major bands.
348
+
349
+ ### Grid & Container
350
+ - Max content width: ~1200px.
351
+ - Editorial body: 12-column grid.
352
+ - Terminal mockup grid: 2×2 equal-size panes.
353
+ - Toolkit grid: 4-up at desktop, 2-up tablet, 1-up mobile.
354
+ - Footer: 5-column at desktop.
355
+
356
+ ### Whitespace Philosophy
357
+ The dark canvas creates its own depth — whitespace can stay tight without feeling crowded. 96px between bands; 24px between cards inside a band.
358
+
359
+ ## Elevation & Depth
360
+
361
+ The system uses **brightness-step elevation**: surfaces step up in brightness instead of casting drop shadows. Combined with subtle radial blue glows, this creates a focused dark-mode atmosphere.
362
+
363
+ | Level | Treatment | Use |
364
+ |---|---|---|
365
+ | Flat (canvas) | `{colors.canvas}` (#0f0f0f) | Body bands, footer |
366
+ | Recessed | `{colors.canvas-deep}` (#000000) | Terminal mockup grid background, code blocks |
367
+ | Card | `{colors.surface-card}` (#181818) | Default content cards |
368
+ | Card elevated | `{colors.surface-card-elevated}` (#222222) | Terminal panes, secondary buttons |
369
+ | Atmospheric glow | Radial gradient using `{colors.primary-glow}` | Hero spotlight backdrop |
370
+
371
+ ### Decorative Depth
372
+ - **Spotlight glow backdrops** — radial blue gradient centered behind hero content.
373
+ - **Terminal-pane brightness ladder** — 2×2 mockup uses canvas-deep outer + surface-card-elevated panes.
374
+
375
+ ## Shapes
376
+
377
+ ### Border Radius Scale
378
+
379
+ | Token | Value | Use |
380
+ |---|---|---|
381
+ | `{rounded.none}` | 0px | Reserved |
382
+ | `{rounded.xs}` | 4px | Inline tags |
383
+ | `{rounded.sm}` | 6px | Compact rows |
384
+ | `{rounded.md}` | 8px | CTA buttons, form inputs |
385
+ | `{rounded.lg}` | 12px | Toolkit cards, code blocks, terminal panes |
386
+ | `{rounded.xl}` | 16px | Feature cards, terminal mockup grids |
387
+ | `{rounded.pill}` | 9999px | Section-label badges |
388
+ | `{rounded.full}` | 9999px | Avatar plates (rare) |
389
+
390
+ Compact developer-ergonomic radii — 8px CTAs, 12-16px cards. Signals "developer tool" rather than "consumer brand."
391
+
392
+ ## Components
393
+
394
+ ### Top Navigation
395
+
396
+ **`top-nav-dark`** — Default top nav. Background `{colors.canvas}`, text `{colors.body-strong}`, height 64px. Layout: Composio wordmark left, primary horizontal menu (Product / Toolkits / Docs / Pricing / Customers / Blog), GitHub stars + Sign In + "Get started" right.
397
+
398
+ ### Buttons
399
+
400
+ **`button-primary`** — The signature Composio Blue CTA. Background `{colors.primary}`, text `{colors.on-primary}`, type `{typography.button}` (14px / 500), padding 10px × 18px, height 40px, rounded `{rounded.md}` (8px).
401
+
402
+ **`button-primary-active`** — Press state. Background `{colors.primary-active}`.
403
+
404
+ **`button-secondary-dark`** — Surface-elevated secondary. Background `{colors.surface-card-elevated}`, text `{colors.body-strong}`.
405
+
406
+ **`button-outline`** — Transparent with 1px hairline-strong border.
407
+
408
+ **`button-tertiary-text`** — Inline text link.
409
+
410
+ ### Hero & Atmospheric
411
+
412
+ **`hero-band`** — Homepage hero. Background `{colors.canvas}`, full-width display headline in `{typography.display-mega}` (72px / 500), subhead, two CTAs, and a spotlight-glow backdrop emanating from behind the centered terminal-mockup grid.
413
+
414
+ **`terminal-mockup-grid`** — The brand's strongest visual signature. 2×2 grid of dark code/output panels inside a `{rounded.xl}` (16px) container. Background `{colors.canvas-deep}`, padding 32px, gap 16px.
415
+
416
+ **`terminal-pane`** — Individual code/output panel inside the mockup grid. Background `{colors.surface-card}`, text `{colors.body}` in `{typography.code}`, rounded `{rounded.lg}` (12px), padding 20px.
417
+
418
+ **`spotlight-glow-card`** — Large feature card with centered display headline and a radial blue glow behind it. Background `{colors.surface-card}`, text `{colors.body-strong}` in `{typography.display-md}`, rounded `{rounded.xl}`, padding 48px.
419
+
420
+ ### Cards
421
+
422
+ **`feature-card`** — 3-up benefit grid. Background `{colors.surface-card}`, text `{colors.body}`, type `{typography.title-md}`, rounded `{rounded.xl}`, padding 28px.
423
+
424
+ **`toolkit-card`** — 4-up toolkit grid (Slack, GitHub, Stripe, Notion, Linear, etc.). Background `{colors.surface-card}`, text `{colors.body-strong}`, type `{typography.title-sm}`, rounded `{rounded.lg}`, padding 20px. 40px square `{component.toolkit-icon}` top, toolkit name, one-line description.
425
+
426
+ **`toolkit-icon`** — Square icon plate. Background `{colors.surface-card-elevated}`, rounded `{rounded.md}`, 40px size.
427
+
428
+ **`testimonial-card`** — Quote card. Background `{colors.surface-card}`, text `{colors.body}`, rounded `{rounded.lg}`, padding 24px.
429
+
430
+ ### Code
431
+
432
+ **`code-block`** — Inline code/terminal block. Background `{colors.canvas-deep}`, text `{colors.body}` in `{typography.code}`, rounded `{rounded.lg}`, padding 20px.
433
+
434
+ ### Forms
435
+
436
+ **`text-input`** — Background `{colors.surface-card}`, text `{colors.body-strong}`, rounded `{rounded.md}` (8px), padding 12px × 16px, height 44px.
437
+
438
+ **`search-input`** — Compact search field. Same surface and radius, smaller padding, 40px height.
439
+
440
+ ### Tags & Badges
441
+
442
+ **`badge-pill`** — Small uppercase pill. Background `{colors.surface-card-elevated}`, text `{colors.body-strong}`, type `{typography.caption-uppercase}`, rounded `{rounded.pill}`, padding 4px × 10px.
443
+
444
+ ### CTA / Footer
445
+
446
+ **`cta-band-spotlight`** — Pre-footer band. Background `{colors.canvas}` with centered radial spotlight glow. Display headline + single primary CTA pill. 96px padding.
447
+
448
+ **`footer-dark`** — Closing footer. Background `{colors.canvas}`, text `{colors.body}`. 5-column link list. 64×48px padding.
449
+
450
+ **`footer-link`** — Background transparent, text `{colors.body}`, type `{typography.body-sm}`.
451
+
452
+ ## Do's and Don'ts
453
+
454
+ ### Do
455
+ - Reserve `{colors.primary}` for primary CTAs, wordmark, and spotlight glows.
456
+ - Use `{rounded.md}` (8px) for every CTA — not full pills.
457
+ - Use brightness-step ladder for elevation; avoid drop shadows.
458
+ - Pair every hero with a centered radial blue spotlight glow.
459
+ - Render code, CLI commands in JetBrains Mono via `{typography.code}`.
460
+ - Use the 2×2 terminal-mockup grid as the homepage hero anchor.
461
+
462
+ ### Don't
463
+ - Don't introduce a secondary brand color. Cyan and violet are illustrative-only.
464
+ - Don't use full pills on CTAs.
465
+ - Don't drop display weight to 400.
466
+ - Don't add drop shadow tiers.
467
+ - Don't use canvas-deep (#000000) outside terminal/code surfaces.
468
+ - Don't extract a CTA color from a third-party widget (cookie consent, OneTrust). The brand's CTA color is what appears on actual page CTAs.
469
+
470
+ ## Responsive Behavior
471
+
472
+ ### Breakpoints
473
+
474
+ | Name | Width | Key Changes |
475
+ |---|---|---|
476
+ | Mobile | < 640px | Hero h1 72→36px; terminal mockup grid collapses to single pane; toolkit grid 1-up; nav hamburger. |
477
+ | Tablet | 640–1024px | Hero h1 56px; terminal mockup grid stays 2×2; toolkit grid 2-up. |
478
+ | Desktop | 1024–1280px | Full hero h1 72px; full 2×2 terminal mockup; toolkit grid 4-up. |
479
+ | Wide | > 1280px | Content caps at 1200px. |
480
+
481
+ ### Touch Targets
482
+ - Primary CTA at 40px height — at WCAG AA, padded for AAA.
483
+ - Search input at 40px.
484
+
485
+ ### Collapsing Strategy
486
+ - Top nav switches to hamburger below 768px.
487
+ - Terminal mockup 2×2 grid collapses to a single pane on mobile.
488
+ - Toolkit grid: 4-up → 2-up → 1-up.
489
+ - Hero spotlight glow stays at every breakpoint.
490
+
491
+ ## Iteration Guide
492
+
493
+ 1. Focus on a single component at a time.
494
+ 2. CTAs default to `{rounded.md}` (8px). Cards use `{rounded.lg}` or `{rounded.xl}`.
495
+ 3. Variants live as separate entries inside `components:`.
496
+ 4. Use `{token.refs}` everywhere — never inline hex.
497
+ 5. Hover state never documented.
498
+ 6. abcDiatype 500 for display, 400/600 for body. JetBrains Mono on every code surface.
499
+ 7. Composio Blue stays scarce.
500
+
501
+ ## Known Gaps
502
+
503
+ - abcDiatype is licensed; Inter is the substitute.
504
+ - Animation timings out of scope.
505
+ - In-product surfaces (toolkit dashboards, agent playground) are behind login walls.
506
+ - Form validation states beyond focus not visible on captured surfaces.
@@ -0,0 +1,5 @@
1
+ # Composio Inspired Design System
2
+
3
+ Design system details have been moved to: https://getdesign.md/composio/design-md
4
+
5
+ You can also view previews, dark mode examples, and download options on getdesign.md.