savant-code 0.0.22 → 0.0.24

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 (79) hide show
  1. package/README.md +5 -0
  2. package/launcher.js +192 -5
  3. package/package.json +3 -2
  4. package/savant-design-systems/SKILL.md +12 -0
  5. package/savant-design-systems/manifest.json +2541 -0
  6. package/savant-design-systems/resources/airbnb-design-analysis.json +983 -0
  7. package/savant-design-systems/resources/airtable-design-analysis.json +931 -0
  8. package/savant-design-systems/resources/apple-design-analysis.json +920 -0
  9. package/savant-design-systems/resources/binance-design-analysis.json +1068 -0
  10. package/savant-design-systems/resources/bmw-design-analysis.json +912 -0
  11. package/savant-design-systems/resources/bmw-m-design-analysis.json +824 -0
  12. package/savant-design-systems/resources/bugatti-design-analysis.json +746 -0
  13. package/savant-design-systems/resources/cal-com-design-analysis.json +913 -0
  14. package/savant-design-systems/resources/claude-design-analysis.json +1007 -0
  15. package/savant-design-systems/resources/clay-design-analysis.json +919 -0
  16. package/savant-design-systems/resources/clickhouse-design-analysis.json +926 -0
  17. package/savant-design-systems/resources/cohere-design-analysis.json +725 -0
  18. package/savant-design-systems/resources/coinbase-design-analysis.json +998 -0
  19. package/savant-design-systems/resources/composio-design-analysis.json +851 -0
  20. package/savant-design-systems/resources/cursor-design-analysis.json +934 -0
  21. package/savant-design-systems/resources/dell-1996-inspired.json +1042 -0
  22. package/savant-design-systems/resources/elevenlabs.json +551 -0
  23. package/savant-design-systems/resources/expo-design-analysis.json +879 -0
  24. package/savant-design-systems/resources/ferrari-design-analysis.json +874 -0
  25. package/savant-design-systems/resources/figma-design-analysis.json +928 -0
  26. package/savant-design-systems/resources/framer-design-analysis.json +891 -0
  27. package/savant-design-systems/resources/hashicorp-design-analysis.json +909 -0
  28. package/savant-design-systems/resources/hp-design-analysis.json +1077 -0
  29. package/savant-design-systems/resources/ibm-design-analysis.json +881 -0
  30. package/savant-design-systems/resources/intercom-design-analysis.json +876 -0
  31. package/savant-design-systems/resources/kraken.json +172 -0
  32. package/savant-design-systems/resources/lamborghini.json +335 -0
  33. package/savant-design-systems/resources/linear-design-analysis.json +890 -0
  34. package/savant-design-systems/resources/lovable.json +345 -0
  35. package/savant-design-systems/resources/mastercard.json +412 -0
  36. package/savant-design-systems/resources/meta-design-analysis.json +1121 -0
  37. package/savant-design-systems/resources/minimax-design-analysis.json +1220 -0
  38. package/savant-design-systems/resources/mintlify-design-analysis.json +1418 -0
  39. package/savant-design-systems/resources/miro-design-analysis.json +1364 -0
  40. package/savant-design-systems/resources/mistral-ai-design-analysis.json +1286 -0
  41. package/savant-design-systems/resources/mongodb-design-analysis.json +1276 -0
  42. package/savant-design-systems/resources/nike-design-analysis.json +938 -0
  43. package/savant-design-systems/resources/nintendo-com-2001-analysis.json +1082 -0
  44. package/savant-design-systems/resources/notion-design-analysis.json +1368 -0
  45. package/savant-design-systems/resources/nvidia-design-analysis.json +1023 -0
  46. package/savant-design-systems/resources/ollama-design-analysis.json +863 -0
  47. package/savant-design-systems/resources/opencode-design-analysis.json +806 -0
  48. package/savant-design-systems/resources/pinterest-design-analysis.json +953 -0
  49. package/savant-design-systems/resources/playstation-design-analysis.json +1053 -0
  50. package/savant-design-systems/resources/posthog-design-analysis.json +1146 -0
  51. package/savant-design-systems/resources/raycast.json +716 -0
  52. package/savant-design-systems/resources/renault-design-analysis.json +916 -0
  53. package/savant-design-systems/resources/replicate-design-analysis.json +986 -0
  54. package/savant-design-systems/resources/resend-design-analysis.json +942 -0
  55. package/savant-design-systems/resources/revolut-design-analysis.json +1008 -0
  56. package/savant-design-systems/resources/runwayml.json +291 -0
  57. package/savant-design-systems/resources/sanity.json +404 -0
  58. package/savant-design-systems/resources/sentri-inspired-design-analysis.json +953 -0
  59. package/savant-design-systems/resources/shopifi-inspired-design-analysis.json +921 -0
  60. package/savant-design-systems/resources/slacc-inspired-design-analysis.json +799 -0
  61. package/savant-design-systems/resources/spacex-inspired-design-analysis.json +598 -0
  62. package/savant-design-systems/resources/spotify.json +293 -0
  63. package/savant-design-systems/resources/starbucks.json +627 -0
  64. package/savant-design-systems/resources/stripi-inspired-design-analysis.json +805 -0
  65. package/savant-design-systems/resources/supabase.json +509 -0
  66. package/savant-design-systems/resources/superhumon-inspired-design-analysis.json +740 -0
  67. package/savant-design-systems/resources/tesla.json +333 -0
  68. package/savant-design-systems/resources/theverge.json +386 -0
  69. package/savant-design-systems/resources/together-ai-inspired-design-analysis.json +1099 -0
  70. package/savant-design-systems/resources/uber-inspired-design-analysis.json +1067 -0
  71. package/savant-design-systems/resources/vercel-inspired-design-analysis.json +1261 -0
  72. package/savant-design-systems/resources/vodafone-inspired-design-analysis.json +912 -0
  73. package/savant-design-systems/resources/voltagent-inspired-design-analysis.json +929 -0
  74. package/savant-design-systems/resources/warp-inspired-design-analysis.json +946 -0
  75. package/savant-design-systems/resources/webflow-inspired-design-analysis.json +1033 -0
  76. package/savant-design-systems/resources/wired-inspired-design-analysis.json +877 -0
  77. package/savant-design-systems/resources/wise-inspired-design-analysis.json +916 -0
  78. package/savant-design-systems/resources/xai-inspired-design-analysis.json +820 -0
  79. package/savant-design-systems/resources/zapier-inspired-design-analysis.json +915 -0
@@ -0,0 +1,851 @@
1
+ {
2
+ "schemaVersion": "1",
3
+ "id": "composio-design-analysis",
4
+ "displayName": "Composio-design-analysis",
5
+ "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.",
6
+ "source": "embedded",
7
+ "status": "curated-reference",
8
+ "targets": [
9
+ "terminal",
10
+ "react"
11
+ ],
12
+ "contentPath": "packages/design-systems/library/composio.design.md",
13
+ "sourceContentHash": "e7db886dabecca61f29b83e8f46d7a1e8a43889d30b81bc6e48162ccaafcbb2f",
14
+ "normalizedContentHash": "629347b20b0a8e537a2e21edcccba746d989488c02a0f0e3b92b4bedc557810d",
15
+ "provenance": {
16
+ "sourceRepository": "VoltAgent/awesome-design-md",
17
+ "sourceRevision": "working-tree-curated-snapshot",
18
+ "sourcePath": "packages/design-systems/library/composio.design.md",
19
+ "license": "MIT"
20
+ },
21
+ "fonts": [
22
+ {
23
+ "family": "abcDiatype",
24
+ "fallback": [
25
+ "system-ui",
26
+ "sans-serif"
27
+ ],
28
+ "redistributable": false
29
+ },
30
+ {
31
+ "family": "Fira Code",
32
+ "fallback": [
33
+ "system-ui",
34
+ "sans-serif"
35
+ ],
36
+ "redistributable": false
37
+ },
38
+ {
39
+ "family": "JetBrains Mono",
40
+ "fallback": [
41
+ "system-ui",
42
+ "sans-serif"
43
+ ],
44
+ "redistributable": false
45
+ }
46
+ ],
47
+ "tokens": {
48
+ "colors": {
49
+ "accent-cyan": "#00d4ff",
50
+ "accent-violet": "#7b3aed",
51
+ "body": "#a8a8a8",
52
+ "body-strong": "#ffffff",
53
+ "canvas": "#0f0f0f",
54
+ "canvas-deep": "#000000",
55
+ "hairline": "#222222",
56
+ "hairline-soft": "#1a1a1a",
57
+ "hairline-strong": "#333333",
58
+ "ink": "#ffffff",
59
+ "muted": "#888888",
60
+ "muted-soft": "#666666",
61
+ "on-dark": "#ffffff",
62
+ "on-primary": "#ffffff",
63
+ "primary": "#0007cd",
64
+ "primary-active": "#0005a3",
65
+ "primary-glow": "#1a26ff",
66
+ "semantic-error": "#ff4d4d",
67
+ "semantic-success": "#33d17a",
68
+ "surface-card": "#181818",
69
+ "surface-card-elevated": "#222222",
70
+ "surface-strong": "#2a2a2a"
71
+ },
72
+ "typography": {
73
+ "display-mega": {
74
+ "fontFamily": "'abcDiatype', ui-sans-serif, system-ui, sans-serif",
75
+ "fontSize": "72px",
76
+ "fontWeight": 500,
77
+ "letterSpacing": "-2.16px",
78
+ "lineHeight": 1.05
79
+ },
80
+ "display-xl": {
81
+ "fontFamily": "'abcDiatype', ui-sans-serif, system-ui, sans-serif",
82
+ "fontSize": "56px",
83
+ "fontWeight": 500,
84
+ "letterSpacing": "-1.68px",
85
+ "lineHeight": 1.05
86
+ },
87
+ "display-lg": {
88
+ "fontFamily": "'abcDiatype', ui-sans-serif, system-ui, sans-serif",
89
+ "fontSize": "44px",
90
+ "fontWeight": 500,
91
+ "letterSpacing": "-1.32px",
92
+ "lineHeight": 1.1
93
+ },
94
+ "display-md": {
95
+ "fontFamily": "'abcDiatype', ui-sans-serif, system-ui, sans-serif",
96
+ "fontSize": "32px",
97
+ "fontWeight": 500,
98
+ "letterSpacing": "-0.96px",
99
+ "lineHeight": 1.15
100
+ },
101
+ "display-sm": {
102
+ "fontFamily": "'abcDiatype', ui-sans-serif, system-ui, sans-serif",
103
+ "fontSize": "24px",
104
+ "fontWeight": 500,
105
+ "letterSpacing": "-0.5px",
106
+ "lineHeight": 1.25
107
+ },
108
+ "title-md": {
109
+ "fontFamily": "'abcDiatype', ui-sans-serif, system-ui, sans-serif",
110
+ "fontSize": "18px",
111
+ "fontWeight": 600,
112
+ "letterSpacing": 0,
113
+ "lineHeight": 1.4
114
+ },
115
+ "title-sm": {
116
+ "fontFamily": "'abcDiatype', ui-sans-serif, system-ui, sans-serif",
117
+ "fontSize": "16px",
118
+ "fontWeight": 600,
119
+ "letterSpacing": 0,
120
+ "lineHeight": 1.4
121
+ },
122
+ "body-md": {
123
+ "fontFamily": "'abcDiatype', ui-sans-serif, system-ui, sans-serif",
124
+ "fontSize": "16px",
125
+ "fontWeight": 400,
126
+ "letterSpacing": 0,
127
+ "lineHeight": 1.5
128
+ },
129
+ "body-sm": {
130
+ "fontFamily": "'abcDiatype', ui-sans-serif, system-ui, sans-serif",
131
+ "fontSize": "14px",
132
+ "fontWeight": 400,
133
+ "letterSpacing": 0,
134
+ "lineHeight": 1.5
135
+ },
136
+ "caption": {
137
+ "fontFamily": "'abcDiatype', ui-sans-serif, system-ui, sans-serif",
138
+ "fontSize": "13px",
139
+ "fontWeight": 400,
140
+ "letterSpacing": 0,
141
+ "lineHeight": 1.4
142
+ },
143
+ "caption-uppercase": {
144
+ "fontFamily": "'abcDiatype', ui-sans-serif, system-ui, sans-serif",
145
+ "fontSize": "11px",
146
+ "fontWeight": 600,
147
+ "letterSpacing": "0.88px",
148
+ "lineHeight": 1.4,
149
+ "textTransform": "uppercase"
150
+ },
151
+ "code": {
152
+ "fontFamily": "'JetBrains Mono', 'Fira Code', monospace",
153
+ "fontSize": "13px",
154
+ "fontWeight": 400,
155
+ "letterSpacing": 0,
156
+ "lineHeight": 1.5
157
+ },
158
+ "button": {
159
+ "fontFamily": "'abcDiatype', ui-sans-serif, system-ui, sans-serif",
160
+ "fontSize": "14px",
161
+ "fontWeight": 500,
162
+ "letterSpacing": 0,
163
+ "lineHeight": 1
164
+ },
165
+ "nav-link": {
166
+ "fontFamily": "'abcDiatype', ui-sans-serif, system-ui, sans-serif",
167
+ "fontSize": "14px",
168
+ "fontWeight": 500,
169
+ "letterSpacing": 0,
170
+ "lineHeight": 1.4
171
+ }
172
+ },
173
+ "spacing": {
174
+ "base": "16px",
175
+ "lg": "24px",
176
+ "md": "20px",
177
+ "section": "96px",
178
+ "sm": "12px",
179
+ "xl": "32px",
180
+ "xs": "8px",
181
+ "xxl": "48px",
182
+ "xxs": "4px"
183
+ },
184
+ "radius": {
185
+ "full": "9999px",
186
+ "lg": "12px",
187
+ "md": "8px",
188
+ "none": "0px",
189
+ "pill": "9999px",
190
+ "sm": "6px",
191
+ "xl": "16px",
192
+ "xs": "4px"
193
+ },
194
+ "components": {
195
+ "top-nav-dark": {
196
+ "backgroundColor": "{colors.canvas}",
197
+ "height": "64px",
198
+ "textColor": "{colors.body-strong}",
199
+ "typography": "{typography.nav-link}"
200
+ },
201
+ "button-primary": {
202
+ "backgroundColor": "{colors.primary}",
203
+ "height": "40px",
204
+ "padding": "10px 18px",
205
+ "rounded": "{rounded.md}",
206
+ "textColor": "{colors.on-primary}",
207
+ "typography": "{typography.button}"
208
+ },
209
+ "button-primary-active": {
210
+ "backgroundColor": "{colors.primary-active}",
211
+ "rounded": "{rounded.md}",
212
+ "textColor": "{colors.on-primary}"
213
+ },
214
+ "button-secondary-dark": {
215
+ "backgroundColor": "{colors.surface-card-elevated}",
216
+ "height": "40px",
217
+ "padding": "10px 18px",
218
+ "rounded": "{rounded.md}",
219
+ "textColor": "{colors.body-strong}",
220
+ "typography": "{typography.button}"
221
+ },
222
+ "button-outline": {
223
+ "backgroundColor": "transparent",
224
+ "height": "40px",
225
+ "padding": "9px 17px",
226
+ "rounded": "{rounded.md}",
227
+ "textColor": "{colors.body-strong}",
228
+ "typography": "{typography.button}"
229
+ },
230
+ "button-tertiary-text": {
231
+ "backgroundColor": "transparent",
232
+ "textColor": "{colors.body}",
233
+ "typography": "{typography.button}"
234
+ },
235
+ "hero-band": {
236
+ "backgroundColor": "{colors.canvas}",
237
+ "padding": "96px",
238
+ "textColor": "{colors.body-strong}",
239
+ "typography": "{typography.display-mega}"
240
+ },
241
+ "terminal-mockup-grid": {
242
+ "backgroundColor": "{colors.canvas-deep}",
243
+ "padding": "32px",
244
+ "rounded": "{rounded.xl}",
245
+ "textColor": "{colors.body-strong}",
246
+ "typography": "{typography.code}"
247
+ },
248
+ "terminal-pane": {
249
+ "backgroundColor": "{colors.surface-card}",
250
+ "padding": "20px",
251
+ "rounded": "{rounded.lg}",
252
+ "textColor": "{colors.body}",
253
+ "typography": "{typography.code}"
254
+ },
255
+ "feature-card": {
256
+ "backgroundColor": "{colors.surface-card}",
257
+ "padding": "28px",
258
+ "rounded": "{rounded.xl}",
259
+ "textColor": "{colors.body}",
260
+ "typography": "{typography.title-md}"
261
+ },
262
+ "toolkit-card": {
263
+ "backgroundColor": "{colors.surface-card}",
264
+ "padding": "20px",
265
+ "rounded": "{rounded.lg}",
266
+ "textColor": "{colors.body-strong}",
267
+ "typography": "{typography.title-sm}"
268
+ },
269
+ "toolkit-icon": {
270
+ "backgroundColor": "{colors.surface-card-elevated}",
271
+ "rounded": "{rounded.md}",
272
+ "size": "40px"
273
+ },
274
+ "spotlight-glow-card": {
275
+ "backgroundColor": "{colors.surface-card}",
276
+ "padding": "48px",
277
+ "rounded": "{rounded.xl}",
278
+ "textColor": "{colors.body-strong}",
279
+ "typography": "{typography.display-md}"
280
+ },
281
+ "code-block": {
282
+ "backgroundColor": "{colors.canvas-deep}",
283
+ "padding": "20px",
284
+ "rounded": "{rounded.lg}",
285
+ "textColor": "{colors.body}",
286
+ "typography": "{typography.code}"
287
+ },
288
+ "badge-pill": {
289
+ "backgroundColor": "{colors.surface-card-elevated}",
290
+ "padding": "4px 10px",
291
+ "rounded": "{rounded.pill}",
292
+ "textColor": "{colors.body-strong}",
293
+ "typography": "{typography.caption-uppercase}"
294
+ },
295
+ "text-input": {
296
+ "backgroundColor": "{colors.surface-card}",
297
+ "height": "44px",
298
+ "padding": "12px 16px",
299
+ "rounded": "{rounded.md}",
300
+ "textColor": "{colors.body-strong}",
301
+ "typography": "{typography.body-md}"
302
+ },
303
+ "search-input": {
304
+ "backgroundColor": "{colors.surface-card}",
305
+ "height": "40px",
306
+ "padding": "10px 16px",
307
+ "rounded": "{rounded.md}",
308
+ "textColor": "{colors.body-strong}",
309
+ "typography": "{typography.body-md}"
310
+ },
311
+ "cta-band-spotlight": {
312
+ "backgroundColor": "{colors.canvas}",
313
+ "padding": "96px",
314
+ "textColor": "{colors.body-strong}",
315
+ "typography": "{typography.display-lg}"
316
+ },
317
+ "testimonial-card": {
318
+ "backgroundColor": "{colors.surface-card}",
319
+ "padding": "24px",
320
+ "rounded": "{rounded.lg}",
321
+ "textColor": "{colors.body}",
322
+ "typography": "{typography.body-md}"
323
+ },
324
+ "footer-dark": {
325
+ "backgroundColor": "{colors.canvas}",
326
+ "padding": "64px 48px",
327
+ "textColor": "{colors.body}",
328
+ "typography": "{typography.body-sm}"
329
+ },
330
+ "footer-link": {
331
+ "backgroundColor": "transparent",
332
+ "textColor": "{colors.body}",
333
+ "typography": "{typography.body-sm}"
334
+ }
335
+ },
336
+ "extensions": {
337
+ "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.",
338
+ "name": "Composio-design-analysis",
339
+ "version": "alpha"
340
+ }
341
+ }
342
+ }
343
+
344
+ ---
345
+
346
+ ---
347
+ version: alpha
348
+ name: Composio-design-analysis
349
+ 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.
350
+
351
+ colors:
352
+ primary: "#0007cd"
353
+ primary-active: "#0005a3"
354
+ primary-glow: "#1a26ff"
355
+ ink: "#ffffff"
356
+ body: "#a8a8a8"
357
+ body-strong: "#ffffff"
358
+ muted: "#888888"
359
+ muted-soft: "#666666"
360
+ hairline: "#222222"
361
+ hairline-soft: "#1a1a1a"
362
+ hairline-strong: "#333333"
363
+ canvas: "#0f0f0f"
364
+ canvas-deep: "#000000"
365
+ surface-card: "#181818"
366
+ surface-card-elevated: "#222222"
367
+ surface-strong: "#2a2a2a"
368
+ on-primary: "#ffffff"
369
+ on-dark: "#ffffff"
370
+ accent-cyan: "#00d4ff"
371
+ accent-violet: "#7b3aed"
372
+ semantic-error: "#ff4d4d"
373
+ semantic-success: "#33d17a"
374
+
375
+ typography:
376
+ display-mega:
377
+ fontFamily: "'abcDiatype', ui-sans-serif, system-ui, sans-serif"
378
+ fontSize: 72px
379
+ fontWeight: 500
380
+ lineHeight: 1.05
381
+ letterSpacing: -2.16px
382
+ display-xl:
383
+ fontFamily: "'abcDiatype', ui-sans-serif, system-ui, sans-serif"
384
+ fontSize: 56px
385
+ fontWeight: 500
386
+ lineHeight: 1.05
387
+ letterSpacing: -1.68px
388
+ display-lg:
389
+ fontFamily: "'abcDiatype', ui-sans-serif, system-ui, sans-serif"
390
+ fontSize: 44px
391
+ fontWeight: 500
392
+ lineHeight: 1.1
393
+ letterSpacing: -1.32px
394
+ display-md:
395
+ fontFamily: "'abcDiatype', ui-sans-serif, system-ui, sans-serif"
396
+ fontSize: 32px
397
+ fontWeight: 500
398
+ lineHeight: 1.15
399
+ letterSpacing: -0.96px
400
+ display-sm:
401
+ fontFamily: "'abcDiatype', ui-sans-serif, system-ui, sans-serif"
402
+ fontSize: 24px
403
+ fontWeight: 500
404
+ lineHeight: 1.25
405
+ letterSpacing: -0.5px
406
+ title-md:
407
+ fontFamily: "'abcDiatype', ui-sans-serif, system-ui, sans-serif"
408
+ fontSize: 18px
409
+ fontWeight: 600
410
+ lineHeight: 1.4
411
+ letterSpacing: 0
412
+ title-sm:
413
+ fontFamily: "'abcDiatype', ui-sans-serif, system-ui, sans-serif"
414
+ fontSize: 16px
415
+ fontWeight: 600
416
+ lineHeight: 1.4
417
+ letterSpacing: 0
418
+ body-md:
419
+ fontFamily: "'abcDiatype', ui-sans-serif, system-ui, sans-serif"
420
+ fontSize: 16px
421
+ fontWeight: 400
422
+ lineHeight: 1.5
423
+ letterSpacing: 0
424
+ body-sm:
425
+ fontFamily: "'abcDiatype', ui-sans-serif, system-ui, sans-serif"
426
+ fontSize: 14px
427
+ fontWeight: 400
428
+ lineHeight: 1.5
429
+ letterSpacing: 0
430
+ caption:
431
+ fontFamily: "'abcDiatype', ui-sans-serif, system-ui, sans-serif"
432
+ fontSize: 13px
433
+ fontWeight: 400
434
+ lineHeight: 1.4
435
+ letterSpacing: 0
436
+ caption-uppercase:
437
+ fontFamily: "'abcDiatype', ui-sans-serif, system-ui, sans-serif"
438
+ fontSize: 11px
439
+ fontWeight: 600
440
+ lineHeight: 1.4
441
+ letterSpacing: 0.88px
442
+ textTransform: uppercase
443
+ code:
444
+ fontFamily: "'JetBrains Mono', 'Fira Code', monospace"
445
+ fontSize: 13px
446
+ fontWeight: 400
447
+ lineHeight: 1.5
448
+ letterSpacing: 0
449
+ button:
450
+ fontFamily: "'abcDiatype', ui-sans-serif, system-ui, sans-serif"
451
+ fontSize: 14px
452
+ fontWeight: 500
453
+ lineHeight: 1.0
454
+ letterSpacing: 0
455
+ nav-link:
456
+ fontFamily: "'abcDiatype', ui-sans-serif, system-ui, sans-serif"
457
+ fontSize: 14px
458
+ fontWeight: 500
459
+ lineHeight: 1.4
460
+ letterSpacing: 0
461
+
462
+ rounded:
463
+ none: 0px
464
+ xs: 4px
465
+ sm: 6px
466
+ md: 8px
467
+ lg: 12px
468
+ xl: 16px
469
+ pill: 9999px
470
+ full: 9999px
471
+
472
+ spacing:
473
+ xxs: 4px
474
+ xs: 8px
475
+ sm: 12px
476
+ base: 16px
477
+ md: 20px
478
+ lg: 24px
479
+ xl: 32px
480
+ xxl: 48px
481
+ section: 96px
482
+
483
+ components:
484
+ top-nav-dark:
485
+ backgroundColor: "{colors.canvas}"
486
+ textColor: "{colors.body-strong}"
487
+ typography: "{typography.nav-link}"
488
+ height: 64px
489
+ button-primary:
490
+ backgroundColor: "{colors.primary}"
491
+ textColor: "{colors.on-primary}"
492
+ typography: "{typography.button}"
493
+ rounded: "{rounded.md}"
494
+ padding: 10px 18px
495
+ height: 40px
496
+ button-primary-active:
497
+ backgroundColor: "{colors.primary-active}"
498
+ textColor: "{colors.on-primary}"
499
+ rounded: "{rounded.md}"
500
+ button-secondary-dark:
501
+ backgroundColor: "{colors.surface-card-elevated}"
502
+ textColor: "{colors.body-strong}"
503
+ typography: "{typography.button}"
504
+ rounded: "{rounded.md}"
505
+ padding: 10px 18px
506
+ height: 40px
507
+ button-outline:
508
+ backgroundColor: transparent
509
+ textColor: "{colors.body-strong}"
510
+ typography: "{typography.button}"
511
+ rounded: "{rounded.md}"
512
+ padding: 9px 17px
513
+ height: 40px
514
+ button-tertiary-text:
515
+ backgroundColor: transparent
516
+ textColor: "{colors.body}"
517
+ typography: "{typography.button}"
518
+ hero-band:
519
+ backgroundColor: "{colors.canvas}"
520
+ textColor: "{colors.body-strong}"
521
+ typography: "{typography.display-mega}"
522
+ padding: 96px
523
+ terminal-mockup-grid:
524
+ backgroundColor: "{colors.canvas-deep}"
525
+ textColor: "{colors.body-strong}"
526
+ typography: "{typography.code}"
527
+ rounded: "{rounded.xl}"
528
+ padding: 32px
529
+ terminal-pane:
530
+ backgroundColor: "{colors.surface-card}"
531
+ textColor: "{colors.body}"
532
+ typography: "{typography.code}"
533
+ rounded: "{rounded.lg}"
534
+ padding: 20px
535
+ feature-card:
536
+ backgroundColor: "{colors.surface-card}"
537
+ textColor: "{colors.body}"
538
+ typography: "{typography.title-md}"
539
+ rounded: "{rounded.xl}"
540
+ padding: 28px
541
+ toolkit-card:
542
+ backgroundColor: "{colors.surface-card}"
543
+ textColor: "{colors.body-strong}"
544
+ typography: "{typography.title-sm}"
545
+ rounded: "{rounded.lg}"
546
+ padding: 20px
547
+ toolkit-icon:
548
+ backgroundColor: "{colors.surface-card-elevated}"
549
+ rounded: "{rounded.md}"
550
+ size: 40px
551
+ spotlight-glow-card:
552
+ backgroundColor: "{colors.surface-card}"
553
+ textColor: "{colors.body-strong}"
554
+ typography: "{typography.display-md}"
555
+ rounded: "{rounded.xl}"
556
+ padding: 48px
557
+ code-block:
558
+ backgroundColor: "{colors.canvas-deep}"
559
+ textColor: "{colors.body}"
560
+ typography: "{typography.code}"
561
+ rounded: "{rounded.lg}"
562
+ padding: 20px
563
+ badge-pill:
564
+ backgroundColor: "{colors.surface-card-elevated}"
565
+ textColor: "{colors.body-strong}"
566
+ typography: "{typography.caption-uppercase}"
567
+ rounded: "{rounded.pill}"
568
+ padding: 4px 10px
569
+ text-input:
570
+ backgroundColor: "{colors.surface-card}"
571
+ textColor: "{colors.body-strong}"
572
+ typography: "{typography.body-md}"
573
+ rounded: "{rounded.md}"
574
+ padding: 12px 16px
575
+ height: 44px
576
+ search-input:
577
+ backgroundColor: "{colors.surface-card}"
578
+ textColor: "{colors.body-strong}"
579
+ typography: "{typography.body-md}"
580
+ rounded: "{rounded.md}"
581
+ padding: 10px 16px
582
+ height: 40px
583
+ cta-band-spotlight:
584
+ backgroundColor: "{colors.canvas}"
585
+ textColor: "{colors.body-strong}"
586
+ typography: "{typography.display-lg}"
587
+ padding: 96px
588
+ testimonial-card:
589
+ backgroundColor: "{colors.surface-card}"
590
+ textColor: "{colors.body}"
591
+ typography: "{typography.body-md}"
592
+ rounded: "{rounded.lg}"
593
+ padding: 24px
594
+ footer-dark:
595
+ backgroundColor: "{colors.canvas}"
596
+ textColor: "{colors.body}"
597
+ typography: "{typography.body-sm}"
598
+ padding: 64px 48px
599
+ footer-link:
600
+ backgroundColor: transparent
601
+ textColor: "{colors.body}"
602
+ typography: "{typography.body-sm}"
603
+ ---
604
+
605
+ ## Overview
606
+
607
+ 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.
608
+
609
+ 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.
610
+
611
+ 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.
612
+
613
+ **Key Characteristics:**
614
+ - Single accent: `{colors.primary}` (#0007cd) for primary CTAs, wordmark, spotlight glows.
615
+ - Single sans family: abcDiatype carries everything except code (JetBrains Mono).
616
+ - Dark monolithic canvas: `{colors.canvas}` runs top to bottom; depth from `{colors.surface-card}` and `{colors.surface-card-elevated}` brightness steps.
617
+ - Terminal-mockup hero: 2×2 grid of code/output panes is the brand signature.
618
+ - Compact pill geometry: CTAs sit at `{rounded.md}` (8px), not full pills — developer-tool dialect.
619
+ - Spotlight-glow atmospheric backdrop: a radial blue glow centered behind hero content.
620
+ - 96px section rhythm.
621
+
622
+ ## Colors
623
+
624
+ ### Brand & Accent
625
+ - **Composio Blue** (`{colors.primary}` — #0007cd): Primary CTAs, wordmark, spotlight glow center.
626
+ - **Composio Blue Active** (`{colors.primary-active}` — #0005a3): Press state.
627
+ - **Spotlight Glow Tone** (`{colors.primary-glow}` — #1a26ff): Brighter blue used inside radial atmospheric glows.
628
+ - **Accent Cyan** (`{colors.accent-cyan}` — #00d4ff): Sparingly on data-flow visualizations.
629
+ - **Accent Violet** (`{colors.accent-violet}` — #7b3aed): Inside specific product illustrations only.
630
+
631
+ ### Surface
632
+ - **Canvas** (`{colors.canvas}` — #0f0f0f): Page floor — near-black.
633
+ - **Canvas Deep** (`{colors.canvas-deep}` — #000000): Pure black for terminal mockup grids and code blocks.
634
+ - **Surface Card** (`{colors.surface-card}` — #181818): Default content card.
635
+ - **Surface Card Elevated** (`{colors.surface-card-elevated}` — #222222): Terminal panes, secondary buttons.
636
+ - **Surface Strong** (`{colors.surface-strong}` — #2a2a2a): Dropdown menus.
637
+
638
+ ### Hairlines
639
+ - **Hairline** (`{colors.hairline}` — #222222): Default 1px divider.
640
+ - **Hairline Soft** (`{colors.hairline-soft}` — #1a1a1a): Lighter divider.
641
+ - **Hairline Strong** (`{colors.hairline-strong}` — #333333): Stronger panel outline.
642
+
643
+ ### Text
644
+ - **Ink** (`{colors.ink}` — #ffffff): Display headlines.
645
+ - **Body** (`{colors.body}` — #a8a8a8): Default running-text — soft gray.
646
+ - **Body Strong** (`{colors.body-strong}` — #ffffff): Same as ink.
647
+ - **Muted** (`{colors.muted}` — #888888): Sub-titles, breadcrumbs.
648
+ - **Muted Soft** (`{colors.muted-soft}` — #666666): Disabled text.
649
+ - **On Primary** (`{colors.on-primary}` — #ffffff): White text on blue CTAs.
650
+
651
+ ### Semantic
652
+ - **Success** (`{colors.semantic-success}` — #33d17a): "Online", "active" indicators.
653
+ - **Error** (`{colors.semantic-error}` — #ff4d4d): Validation errors.
654
+
655
+ ## Typography
656
+
657
+ ### Font Family
658
+ The system runs **abcDiatype** (Lineto) across every text role. Code blocks switch to **JetBrains Mono**. Fallback: `ui-sans-serif, system-ui, sans-serif`.
659
+
660
+ ### Hierarchy
661
+
662
+ | Token | Size | Weight | Line Height | Letter Spacing | Use |
663
+ |---|---|---|---|---|---|
664
+ | `{typography.display-mega}` | 72px | 500 | 1.05 | -2.16px | Homepage hero h1 |
665
+ | `{typography.display-xl}` | 56px | 500 | 1.05 | -1.68px | Subsidiary heroes |
666
+ | `{typography.display-lg}` | 44px | 500 | 1.1 | -1.32px | Section heads |
667
+ | `{typography.display-md}` | 32px | 500 | 1.15 | -0.96px | Sub-section heads |
668
+ | `{typography.display-sm}` | 24px | 500 | 1.25 | -0.5px | Card group titles |
669
+ | `{typography.title-md}` | 18px | 600 | 1.4 | 0 | Component titles |
670
+ | `{typography.title-sm}` | 16px | 600 | 1.4 | 0 | Toolkit card titles |
671
+ | `{typography.body-md}` | 16px | 400 | 1.5 | 0 | Default body |
672
+ | `{typography.body-sm}` | 14px | 400 | 1.5 | 0 | Footer body |
673
+ | `{typography.caption}` | 13px | 400 | 1.4 | 0 | Photo captions |
674
+ | `{typography.caption-uppercase}` | 11px | 600 | 1.4 | 0.88px | Section labels, badge pills |
675
+ | `{typography.code}` | 13px | 400 | 1.5 | 0 | Code blocks — JetBrains Mono |
676
+ | `{typography.button}` | 14px | 500 | 1.0 | 0 | CTA pill labels |
677
+ | `{typography.nav-link}` | 14px | 500 | 1.4 | 0 | Top-nav menu |
678
+
679
+ ### Principles
680
+ - **Display weight stays at 500.** Confident but not display-bold.
681
+ - **abcDiatype across every role.** No display/body family split.
682
+ - **JetBrains Mono on every code surface.**
683
+
684
+ ### Note on Font Substitutes
685
+ abcDiatype is a Lineto licensed typeface. Open-source substitute: **Inter** at weight 500 with letter-spacing -1.5%.
686
+
687
+ ## Layout
688
+
689
+ ### Spacing System
690
+ - **Base unit:** 4px.
691
+ - **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.
692
+ - **Section padding:** `{spacing.section}` (96px) for major bands.
693
+
694
+ ### Grid & Container
695
+ - Max content width: ~1200px.
696
+ - Editorial body: 12-column grid.
697
+ - Terminal mockup grid: 2×2 equal-size panes.
698
+ - Toolkit grid: 4-up at desktop, 2-up tablet, 1-up mobile.
699
+ - Footer: 5-column at desktop.
700
+
701
+ ### Whitespace Philosophy
702
+ The dark canvas creates its own depth — whitespace can stay tight without feeling crowded. 96px between bands; 24px between cards inside a band.
703
+
704
+ ## Elevation & Depth
705
+
706
+ 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.
707
+
708
+ | Level | Treatment | Use |
709
+ |---|---|---|
710
+ | Flat (canvas) | `{colors.canvas}` (#0f0f0f) | Body bands, footer |
711
+ | Recessed | `{colors.canvas-deep}` (#000000) | Terminal mockup grid background, code blocks |
712
+ | Card | `{colors.surface-card}` (#181818) | Default content cards |
713
+ | Card elevated | `{colors.surface-card-elevated}` (#222222) | Terminal panes, secondary buttons |
714
+ | Atmospheric glow | Radial gradient using `{colors.primary-glow}` | Hero spotlight backdrop |
715
+
716
+ ### Decorative Depth
717
+ - **Spotlight glow backdrops** — radial blue gradient centered behind hero content.
718
+ - **Terminal-pane brightness ladder** — 2×2 mockup uses canvas-deep outer + surface-card-elevated panes.
719
+
720
+ ## Shapes
721
+
722
+ ### Border Radius Scale
723
+
724
+ | Token | Value | Use |
725
+ |---|---|---|
726
+ | `{rounded.none}` | 0px | Reserved |
727
+ | `{rounded.xs}` | 4px | Inline tags |
728
+ | `{rounded.sm}` | 6px | Compact rows |
729
+ | `{rounded.md}` | 8px | CTA buttons, form inputs |
730
+ | `{rounded.lg}` | 12px | Toolkit cards, code blocks, terminal panes |
731
+ | `{rounded.xl}` | 16px | Feature cards, terminal mockup grids |
732
+ | `{rounded.pill}` | 9999px | Section-label badges |
733
+ | `{rounded.full}` | 9999px | Avatar plates (rare) |
734
+
735
+ Compact developer-ergonomic radii — 8px CTAs, 12-16px cards. Signals "developer tool" rather than "consumer brand."
736
+
737
+ ## Components
738
+
739
+ ### Top Navigation
740
+
741
+ **`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.
742
+
743
+ ### Buttons
744
+
745
+ **`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).
746
+
747
+ **`button-primary-active`** — Press state. Background `{colors.primary-active}`.
748
+
749
+ **`button-secondary-dark`** — Surface-elevated secondary. Background `{colors.surface-card-elevated}`, text `{colors.body-strong}`.
750
+
751
+ **`button-outline`** — Transparent with 1px hairline-strong border.
752
+
753
+ **`button-tertiary-text`** — Inline text link.
754
+
755
+ ### Hero & Atmospheric
756
+
757
+ **`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.
758
+
759
+ **`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.
760
+
761
+ **`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.
762
+
763
+ **`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.
764
+
765
+ ### Cards
766
+
767
+ **`feature-card`** — 3-up benefit grid. Background `{colors.surface-card}`, text `{colors.body}`, type `{typography.title-md}`, rounded `{rounded.xl}`, padding 28px.
768
+
769
+ **`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.
770
+
771
+ **`toolkit-icon`** — Square icon plate. Background `{colors.surface-card-elevated}`, rounded `{rounded.md}`, 40px size.
772
+
773
+ **`testimonial-card`** — Quote card. Background `{colors.surface-card}`, text `{colors.body}`, rounded `{rounded.lg}`, padding 24px.
774
+
775
+ ### Code
776
+
777
+ **`code-block`** — Inline code/terminal block. Background `{colors.canvas-deep}`, text `{colors.body}` in `{typography.code}`, rounded `{rounded.lg}`, padding 20px.
778
+
779
+ ### Forms
780
+
781
+ **`text-input`** — Background `{colors.surface-card}`, text `{colors.body-strong}`, rounded `{rounded.md}` (8px), padding 12px × 16px, height 44px.
782
+
783
+ **`search-input`** — Compact search field. Same surface and radius, smaller padding, 40px height.
784
+
785
+ ### Tags & Badges
786
+
787
+ **`badge-pill`** — Small uppercase pill. Background `{colors.surface-card-elevated}`, text `{colors.body-strong}`, type `{typography.caption-uppercase}`, rounded `{rounded.pill}`, padding 4px × 10px.
788
+
789
+ ### CTA / Footer
790
+
791
+ **`cta-band-spotlight`** — Pre-footer band. Background `{colors.canvas}` with centered radial spotlight glow. Display headline + single primary CTA pill. 96px padding.
792
+
793
+ **`footer-dark`** — Closing footer. Background `{colors.canvas}`, text `{colors.body}`. 5-column link list. 64×48px padding.
794
+
795
+ **`footer-link`** — Background transparent, text `{colors.body}`, type `{typography.body-sm}`.
796
+
797
+ ## Do's and Don'ts
798
+
799
+ ### Do
800
+ - Reserve `{colors.primary}` for primary CTAs, wordmark, and spotlight glows.
801
+ - Use `{rounded.md}` (8px) for every CTA — not full pills.
802
+ - Use brightness-step ladder for elevation; avoid drop shadows.
803
+ - Pair every hero with a centered radial blue spotlight glow.
804
+ - Render code, CLI commands in JetBrains Mono via `{typography.code}`.
805
+ - Use the 2×2 terminal-mockup grid as the homepage hero anchor.
806
+
807
+ ### Don't
808
+ - Don't introduce a secondary brand color. Cyan and violet are illustrative-only.
809
+ - Don't use full pills on CTAs.
810
+ - Don't drop display weight to 400.
811
+ - Don't add drop shadow tiers.
812
+ - Don't use canvas-deep (#000000) outside terminal/code surfaces.
813
+ - 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.
814
+
815
+ ## Responsive Behavior
816
+
817
+ ### Breakpoints
818
+
819
+ | Name | Width | Key Changes |
820
+ |---|---|---|
821
+ | Mobile | < 640px | Hero h1 72→36px; terminal mockup grid collapses to single pane; toolkit grid 1-up; nav hamburger. |
822
+ | Tablet | 640–1024px | Hero h1 56px; terminal mockup grid stays 2×2; toolkit grid 2-up. |
823
+ | Desktop | 1024–1280px | Full hero h1 72px; full 2×2 terminal mockup; toolkit grid 4-up. |
824
+ | Wide | > 1280px | Content caps at 1200px. |
825
+
826
+ ### Touch Targets
827
+ - Primary CTA at 40px height — at WCAG AA, padded for AAA.
828
+ - Search input at 40px.
829
+
830
+ ### Collapsing Strategy
831
+ - Top nav switches to hamburger below 768px.
832
+ - Terminal mockup 2×2 grid collapses to a single pane on mobile.
833
+ - Toolkit grid: 4-up → 2-up → 1-up.
834
+ - Hero spotlight glow stays at every breakpoint.
835
+
836
+ ## Iteration Guide
837
+
838
+ 1. Focus on a single component at a time.
839
+ 2. CTAs default to `{rounded.md}` (8px). Cards use `{rounded.lg}` or `{rounded.xl}`.
840
+ 3. Variants live as separate entries inside `components:`.
841
+ 4. Use `{token.refs}` everywhere — never inline hex.
842
+ 5. Hover state never documented.
843
+ 6. abcDiatype 500 for display, 400/600 for body. JetBrains Mono on every code surface.
844
+ 7. Composio Blue stays scarce.
845
+
846
+ ## Known Gaps
847
+
848
+ - abcDiatype is licensed; Inter is the substitute.
849
+ - Animation timings out of scope.
850
+ - In-product surfaces (toolkit dashboards, agent playground) are behind login walls.
851
+ - Form validation states beyond focus not visible on captured surfaces.