@nebutra/tokens 0.1.2 → 2.0.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.
- package/CHANGELOG.md +8 -0
- package/brands/README.md +66 -0
- package/brands/cosmos/DESIGN.md +356 -0
- package/brands/cosmos/brand.json +209 -0
- package/brands/cosmos/refero-tokens.json +312 -0
- package/brands/gsap/brand.json +18 -91
- package/brands/linear/DESIGN.md +478 -0
- package/brands/linear/brand.json +20 -76
- package/brands/notion/brand.json +20 -90
- package/brands/raycast/brand.json +19 -81
- package/brands/stripe/brand.json +17 -88
- package/brands/vanta/brand.json +17 -101
- package/brands/vercel/brand.json +17 -68
- package/dist/brand-package/index.d.ts +123 -0
- package/dist/brand-package/index.js +2316 -0
- package/dist/brand-package/index.js.map +1 -0
- package/dist/brand-package/use-brand.d.ts +2 -0
- package/dist/brand-package/use-brand.js +963 -0
- package/dist/brand-package/use-brand.js.map +1 -0
- package/dist/index.d.ts +81 -0
- package/dist/index.js +2581 -0
- package/dist/index.js.map +1 -0
- package/dist/use-brand-ClmvK_lC.d.ts +387 -0
- package/package.json +41 -10
- package/recipe.css +330 -1
- package/skins/README.md +2 -4
- package/skins/cosmos.css +239 -0
- package/skins/gsap.css +62 -138
- package/skins/linear.css +85 -132
- package/skins/notion.css +62 -141
- package/skins/raycast.css +68 -137
- package/skins/stripe.css +60 -143
- package/skins/vanta.css +60 -151
- package/skins/vercel.css +83 -128
- package/styles.css +477 -115
- package/.turbo/turbo-build.log +0 -8
- package/.turbo/turbo-typecheck.log +0 -4
- package/AGENTS.md +0 -45
- package/DESIGN.md +0 -357
- package/scripts/compile-brand-run.ts +0 -79
- package/scripts/compile-brand.mjs +0 -25
- package/scripts/emit-skins-run.ts +0 -62
- package/scripts/emit-skins.mjs +0 -31
- package/scripts/sync-styles.mjs +0 -29
- package/src/brand-package/__tests__/compile-refero.test.ts +0 -427
- package/src/brand-package/__tests__/emit-css.test.ts +0 -130
- package/src/brand-package/apply-brand.ts +0 -92
- package/src/brand-package/compile-helpers.ts +0 -170
- package/src/brand-package/compile-refero.ts +0 -69
- package/src/brand-package/emit-css.ts +0 -468
- package/src/brand-package/hex-to-hsl.ts +0 -100
- package/src/brand-package/index.ts +0 -71
- package/src/brand-package/infer-recipe.ts +0 -198
- package/src/brand-package/normalize.ts +0 -295
- package/src/brand-package/presets/context.ts +0 -17
- package/src/brand-package/presets/generic.ts +0 -214
- package/src/brand-package/presets/gsap.ts +0 -146
- package/src/brand-package/presets/index.ts +0 -31
- package/src/brand-package/presets/linear.ts +0 -183
- package/src/brand-package/presets/notion.ts +0 -208
- package/src/brand-package/presets/raycast.ts +0 -138
- package/src/brand-package/presets/recipe.ts +0 -61
- package/src/brand-package/presets/stripe.ts +0 -207
- package/src/brand-package/presets/vanta.ts +0 -220
- package/src/brand-package/presets/vercel.ts +0 -187
- package/src/brand-package/types.ts +0 -285
- package/src/brand-package/use-brand.ts +0 -207
- package/src/brand-package/validate.ts +0 -108
- package/src/index.ts +0 -67
- package/src/theme-provider.tsx +0 -246
- package/tsconfig.json +0 -11
- package/turbo.json +0 -15
package/brands/notion/brand.json
CHANGED
|
@@ -13,9 +13,8 @@
|
|
|
13
13
|
"quiet": "208 92% 95%",
|
|
14
14
|
"quietForeground": "208 100% 44%",
|
|
15
15
|
"muted": "208 92% 95%",
|
|
16
|
-
"mutedForeground": "0 0%
|
|
16
|
+
"mutedForeground": "0 0% 43%",
|
|
17
17
|
"border": "30 5% 88%",
|
|
18
|
-
"input": "0 0% 100%",
|
|
19
18
|
"ring": "208 100% 44%",
|
|
20
19
|
"destructive": "7 92% 58%",
|
|
21
20
|
"destructiveForeground": "0 0% 100%",
|
|
@@ -44,7 +43,6 @@
|
|
|
44
43
|
"destructive": "7 92% 58%",
|
|
45
44
|
"destructiveForeground": "0 0% 100%",
|
|
46
45
|
"border": "30 5% 88%",
|
|
47
|
-
"input": "0 0% 100%",
|
|
48
46
|
"ring": "208 100% 44%",
|
|
49
47
|
"warning": "40 100% 53%",
|
|
50
48
|
"warningForeground": "0 0% 0%",
|
|
@@ -72,91 +70,23 @@
|
|
|
72
70
|
"typography": {
|
|
73
71
|
"fontSans": "'NotionInter', 'Inter', ui-sans-serif, system-ui, sans-serif",
|
|
74
72
|
"fontDisplay": "'NotionInter', 'Inter', ui-sans-serif, system-ui, sans-serif",
|
|
75
|
-
"headingWeight": 700
|
|
76
|
-
"faces": [
|
|
77
|
-
{
|
|
78
|
-
"family": "NotionInter",
|
|
79
|
-
"src": [
|
|
80
|
-
{
|
|
81
|
-
"url": "https://cdn.jsdelivr.net/fontsource/fonts/inter:vf@latest/latin-wght-normal.woff2",
|
|
82
|
-
"format": "woff2"
|
|
83
|
-
}
|
|
84
|
-
],
|
|
85
|
-
"weight": "100 900",
|
|
86
|
-
"display": "swap"
|
|
87
|
-
},
|
|
88
|
-
{
|
|
89
|
-
"family": "Lyon Text",
|
|
90
|
-
"src": [
|
|
91
|
-
{
|
|
92
|
-
"url": "/brand-assets/lyon-text-regular.woff2",
|
|
93
|
-
"format": "woff2"
|
|
94
|
-
}
|
|
95
|
-
],
|
|
96
|
-
"weight": 400,
|
|
97
|
-
"display": "swap"
|
|
98
|
-
}
|
|
99
|
-
]
|
|
73
|
+
"headingWeight": 700
|
|
100
74
|
},
|
|
101
|
-
"
|
|
102
|
-
"
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
"lineHeight": 1.5,
|
|
117
|
-
"fontWeight": 400
|
|
118
|
-
},
|
|
119
|
-
"subheading": {
|
|
120
|
-
"fontSize": "20px",
|
|
121
|
-
"lineHeight": 1,
|
|
122
|
-
"fontWeight": 500
|
|
123
|
-
},
|
|
124
|
-
"headingSm": {
|
|
125
|
-
"fontSize": "22px",
|
|
126
|
-
"lineHeight": 1.27,
|
|
127
|
-
"fontWeight": 600,
|
|
128
|
-
"letterSpacing": "-0.242px"
|
|
129
|
-
},
|
|
130
|
-
"heading": {
|
|
131
|
-
"fontSize": "40px",
|
|
132
|
-
"lineHeight": 1.5,
|
|
133
|
-
"fontWeight": 600
|
|
134
|
-
}
|
|
135
|
-
},
|
|
136
|
-
"marketing": {
|
|
137
|
-
"body": {
|
|
138
|
-
"fontSize": "16px",
|
|
139
|
-
"lineHeight": 1.5,
|
|
140
|
-
"fontWeight": 400
|
|
141
|
-
},
|
|
142
|
-
"heading": {
|
|
143
|
-
"fontSize": "48px",
|
|
144
|
-
"lineHeight": 1.5,
|
|
145
|
-
"fontWeight": 700
|
|
146
|
-
},
|
|
147
|
-
"headingLg": {
|
|
148
|
-
"fontSize": "54px",
|
|
149
|
-
"lineHeight": 1.04,
|
|
150
|
-
"fontWeight": 700,
|
|
151
|
-
"letterSpacing": "-1.89px"
|
|
152
|
-
},
|
|
153
|
-
"display": {
|
|
154
|
-
"fontSize": "72px",
|
|
155
|
-
"lineHeight": 1.21,
|
|
156
|
-
"fontWeight": 700,
|
|
157
|
-
"letterSpacing": "-2.016px"
|
|
158
|
-
}
|
|
159
|
-
}
|
|
75
|
+
"motion": {
|
|
76
|
+
"easeOut": "cubic-bezier(0.25, 0.46, 0.45, 0.94)",
|
|
77
|
+
"easeInOut": "cubic-bezier(0.4, 0, 0.2, 1)",
|
|
78
|
+
"micro": 120,
|
|
79
|
+
"flow": 200,
|
|
80
|
+
"reveal": 280,
|
|
81
|
+
"cinematic": 460
|
|
82
|
+
},
|
|
83
|
+
"spacing": {
|
|
84
|
+
"xs": "0.625rem",
|
|
85
|
+
"sm": "1rem",
|
|
86
|
+
"md": "1.5rem",
|
|
87
|
+
"lg": "2rem",
|
|
88
|
+
"xl": "2.75rem",
|
|
89
|
+
"2xl": "3.75rem"
|
|
160
90
|
},
|
|
161
91
|
"extensions": {
|
|
162
92
|
"categories": {
|
|
@@ -180,10 +110,10 @@
|
|
|
180
110
|
"notes": [
|
|
181
111
|
"roles.action = Notion Blue (only filled CTA). Accent hues are decorative card washes.",
|
|
182
112
|
"roles.brand = Ink Black (logo / wordmark / text hierarchy via alpha).",
|
|
183
|
-
"Canvas = Paper Warmth; cards = Pure White
|
|
184
|
-
"Card elev=none + hairline border; sticky nav soft shadow
|
|
113
|
+
"Canvas = Paper Warmth; cards = Pure White \u2014 never invert.",
|
|
114
|
+
"Card elev=none + hairline border; sticky nav soft shadow \u2192 elevation raised slot.",
|
|
185
115
|
"Buttons 8px, cards 12px, pills 9999px.",
|
|
186
|
-
"Lyon Text is editorial accent only
|
|
116
|
+
"Lyon Text is editorial accent only \u2014 not product chrome UI."
|
|
187
117
|
]
|
|
188
118
|
}
|
|
189
119
|
}
|
|
@@ -21,7 +21,6 @@
|
|
|
21
21
|
"destructive": "0 72% 51%",
|
|
22
22
|
"destructiveForeground": "0 0% 100%",
|
|
23
23
|
"border": "210 2% 19%",
|
|
24
|
-
"input": "220 8% 7%",
|
|
25
24
|
"ring": "240 1% 61%",
|
|
26
25
|
"success": "151 59% 59%",
|
|
27
26
|
"successForeground": "210 20% 2%",
|
|
@@ -49,84 +48,24 @@
|
|
|
49
48
|
"fontSans": "'Inter', ui-sans-serif, system-ui, -apple-system, sans-serif",
|
|
50
49
|
"fontMono": "'Geist Mono', 'GeistMono', ui-monospace, Menlo, monospace",
|
|
51
50
|
"fontDisplay": "'Inter', ui-sans-serif, system-ui, sans-serif",
|
|
52
|
-
"headingWeight": 400
|
|
53
|
-
"faces": [
|
|
54
|
-
{
|
|
55
|
-
"family": "Inter",
|
|
56
|
-
"src": [
|
|
57
|
-
{
|
|
58
|
-
"url": "https://cdn.jsdelivr.net/fontsource/fonts/inter:vf@latest/latin-wght-normal.woff2",
|
|
59
|
-
"format": "woff2"
|
|
60
|
-
}
|
|
61
|
-
],
|
|
62
|
-
"weight": "100 900",
|
|
63
|
-
"display": "swap"
|
|
64
|
-
}
|
|
65
|
-
]
|
|
51
|
+
"headingWeight": 400
|
|
66
52
|
},
|
|
67
|
-
"
|
|
68
|
-
"
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
"fontWeight": 400
|
|
84
|
-
},
|
|
85
|
-
"bodyLg": {
|
|
86
|
-
"fontSize": "18px",
|
|
87
|
-
"lineHeight": 1.15,
|
|
88
|
-
"fontWeight": 400
|
|
89
|
-
},
|
|
90
|
-
"subheading": {
|
|
91
|
-
"fontSize": "20px",
|
|
92
|
-
"lineHeight": 1.2,
|
|
93
|
-
"fontWeight": 400,
|
|
94
|
-
"letterSpacing": "0.2px"
|
|
95
|
-
},
|
|
96
|
-
"headingSm": {
|
|
97
|
-
"fontSize": "24px",
|
|
98
|
-
"lineHeight": 1.15,
|
|
99
|
-
"fontWeight": 500
|
|
100
|
-
},
|
|
101
|
-
"heading": {
|
|
102
|
-
"fontSize": "32px",
|
|
103
|
-
"lineHeight": 1.15,
|
|
104
|
-
"fontWeight": 500
|
|
105
|
-
}
|
|
106
|
-
},
|
|
107
|
-
"marketing": {
|
|
108
|
-
"body": {
|
|
109
|
-
"fontSize": "16px",
|
|
110
|
-
"lineHeight": 1.15,
|
|
111
|
-
"fontWeight": 400
|
|
112
|
-
},
|
|
113
|
-
"heading": {
|
|
114
|
-
"fontSize": "32px",
|
|
115
|
-
"lineHeight": 1.15,
|
|
116
|
-
"fontWeight": 500
|
|
117
|
-
},
|
|
118
|
-
"headingLg": {
|
|
119
|
-
"fontSize": "56px",
|
|
120
|
-
"lineHeight": 1.17,
|
|
121
|
-
"fontWeight": 400,
|
|
122
|
-
"letterSpacing": "0.22px"
|
|
123
|
-
},
|
|
124
|
-
"display": {
|
|
125
|
-
"fontSize": "64px",
|
|
126
|
-
"lineHeight": 1.1,
|
|
127
|
-
"fontWeight": 600
|
|
128
|
-
}
|
|
129
|
-
}
|
|
53
|
+
"motion": {
|
|
54
|
+
"easeOut": "cubic-bezier(0.16, 1, 0.3, 1)",
|
|
55
|
+
"easeInOut": "cubic-bezier(0.4, 0, 0.2, 1)",
|
|
56
|
+
"easeSpring": "cubic-bezier(0.34, 1.56, 0.64, 1)",
|
|
57
|
+
"micro": 90,
|
|
58
|
+
"flow": 160,
|
|
59
|
+
"reveal": 220,
|
|
60
|
+
"cinematic": 340
|
|
61
|
+
},
|
|
62
|
+
"spacing": {
|
|
63
|
+
"xs": "0.375rem",
|
|
64
|
+
"sm": "0.5rem",
|
|
65
|
+
"md": "0.75rem",
|
|
66
|
+
"lg": "1rem",
|
|
67
|
+
"xl": "1.375rem",
|
|
68
|
+
"2xl": "2rem"
|
|
130
69
|
},
|
|
131
70
|
"extensions": {
|
|
132
71
|
"categories": {
|
|
@@ -137,7 +76,7 @@
|
|
|
137
76
|
"sourceUrl": "https://raycast.com",
|
|
138
77
|
"notes": [
|
|
139
78
|
"Primary CTA = Mist fill + Iron text (neutral solid).",
|
|
140
|
-
"Coral Pulse is brand mark only
|
|
79
|
+
"Coral Pulse is brand mark only \u2014 do not use for general product chrome CTAs.",
|
|
141
80
|
"Cards use elevation=key (keyboard-key inset shadow stack)."
|
|
142
81
|
]
|
|
143
82
|
},
|
|
@@ -151,9 +90,8 @@
|
|
|
151
90
|
"quiet": "220 5% 11%",
|
|
152
91
|
"quietForeground": "0 0% 100%",
|
|
153
92
|
"muted": "220 8% 7%",
|
|
154
|
-
"mutedForeground": "210 1%
|
|
93
|
+
"mutedForeground": "210 1% 48%",
|
|
155
94
|
"border": "210 2% 19%",
|
|
156
|
-
"input": "220 8% 7%",
|
|
157
95
|
"ring": "240 1% 61%",
|
|
158
96
|
"destructive": "0 72% 51%",
|
|
159
97
|
"destructiveForeground": "0 0% 100%",
|
package/brands/stripe/brand.json
CHANGED
|
@@ -15,7 +15,6 @@
|
|
|
15
15
|
"muted": "216 56% 98%",
|
|
16
16
|
"mutedForeground": "217 17% 47%",
|
|
17
17
|
"border": "210 44% 93%",
|
|
18
|
-
"input": "0 0% 100%",
|
|
19
18
|
"ring": "248 98% 61%",
|
|
20
19
|
"destructive": "0 72% 51%",
|
|
21
20
|
"destructiveForeground": "0 0% 100%",
|
|
@@ -42,7 +41,6 @@
|
|
|
42
41
|
"destructive": "0 72% 51%",
|
|
43
42
|
"destructiveForeground": "0 0% 100%",
|
|
44
43
|
"border": "210 44% 93%",
|
|
45
|
-
"input": "0 0% 100%",
|
|
46
44
|
"ring": "248 98% 61%",
|
|
47
45
|
"info": "231 100% 73%",
|
|
48
46
|
"infoForeground": "211 78% 11%"
|
|
@@ -68,92 +66,23 @@
|
|
|
68
66
|
"typography": {
|
|
69
67
|
"fontSans": "'sohne-var', 'Inter Tight', 'Inter', ui-sans-serif, system-ui, sans-serif",
|
|
70
68
|
"fontDisplay": "'sohne-var', 'Inter Tight', ui-sans-serif, system-ui, sans-serif",
|
|
71
|
-
"headingWeight": 300
|
|
72
|
-
"faces": [
|
|
73
|
-
{
|
|
74
|
-
"family": "sohne-var",
|
|
75
|
-
"src": [
|
|
76
|
-
{
|
|
77
|
-
"url": "/brand-assets/sohne-var.woff2",
|
|
78
|
-
"format": "woff2"
|
|
79
|
-
}
|
|
80
|
-
],
|
|
81
|
-
"weight": "300 400",
|
|
82
|
-
"display": "swap"
|
|
83
|
-
}
|
|
84
|
-
]
|
|
69
|
+
"headingWeight": 300
|
|
85
70
|
},
|
|
86
|
-
"
|
|
87
|
-
"
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
"fontSize": "16px",
|
|
102
|
-
"lineHeight": 1.2,
|
|
103
|
-
"fontWeight": 400,
|
|
104
|
-
"letterSpacing": "-0.16px"
|
|
105
|
-
},
|
|
106
|
-
"bodyLg": {
|
|
107
|
-
"fontSize": "20px",
|
|
108
|
-
"lineHeight": 1.4,
|
|
109
|
-
"fontWeight": 300,
|
|
110
|
-
"letterSpacing": "-0.2px"
|
|
111
|
-
},
|
|
112
|
-
"subheading": {
|
|
113
|
-
"fontSize": "22px",
|
|
114
|
-
"lineHeight": 1.1,
|
|
115
|
-
"fontWeight": 300,
|
|
116
|
-
"letterSpacing": "-0.22px"
|
|
117
|
-
},
|
|
118
|
-
"headingSm": {
|
|
119
|
-
"fontSize": "26px",
|
|
120
|
-
"lineHeight": 1.12,
|
|
121
|
-
"fontWeight": 300,
|
|
122
|
-
"letterSpacing": "-0.26px"
|
|
123
|
-
},
|
|
124
|
-
"heading": {
|
|
125
|
-
"fontSize": "32px",
|
|
126
|
-
"lineHeight": 1.1,
|
|
127
|
-
"fontWeight": 300,
|
|
128
|
-
"letterSpacing": "-0.64px"
|
|
129
|
-
}
|
|
130
|
-
},
|
|
131
|
-
"marketing": {
|
|
132
|
-
"body": {
|
|
133
|
-
"fontSize": "16px",
|
|
134
|
-
"lineHeight": 1.4,
|
|
135
|
-
"fontWeight": 300,
|
|
136
|
-
"letterSpacing": "-0.16px"
|
|
137
|
-
},
|
|
138
|
-
"heading": {
|
|
139
|
-
"fontSize": "32px",
|
|
140
|
-
"lineHeight": 1.1,
|
|
141
|
-
"fontWeight": 300,
|
|
142
|
-
"letterSpacing": "-0.64px"
|
|
143
|
-
},
|
|
144
|
-
"headingLg": {
|
|
145
|
-
"fontSize": "48px",
|
|
146
|
-
"lineHeight": 1.03,
|
|
147
|
-
"fontWeight": 300,
|
|
148
|
-
"letterSpacing": "-0.96px"
|
|
149
|
-
},
|
|
150
|
-
"display": {
|
|
151
|
-
"fontSize": "56px",
|
|
152
|
-
"lineHeight": 1.03,
|
|
153
|
-
"fontWeight": 300,
|
|
154
|
-
"letterSpacing": "-1.4px"
|
|
155
|
-
}
|
|
156
|
-
}
|
|
71
|
+
"motion": {
|
|
72
|
+
"easeOut": "cubic-bezier(0.215, 0.61, 0.355, 1)",
|
|
73
|
+
"easeInOut": "cubic-bezier(0.645, 0.045, 0.355, 1)",
|
|
74
|
+
"micro": 100,
|
|
75
|
+
"flow": 180,
|
|
76
|
+
"reveal": 260,
|
|
77
|
+
"cinematic": 400
|
|
78
|
+
},
|
|
79
|
+
"spacing": {
|
|
80
|
+
"xs": "0.5rem",
|
|
81
|
+
"sm": "0.75rem",
|
|
82
|
+
"md": "1.125rem",
|
|
83
|
+
"lg": "1.75rem",
|
|
84
|
+
"xl": "2.25rem",
|
|
85
|
+
"2xl": "3.25rem"
|
|
157
86
|
},
|
|
158
87
|
"extensions": {
|
|
159
88
|
"categories": {
|
|
@@ -174,7 +103,7 @@
|
|
|
174
103
|
"sourceUrl": "https://stripe.com",
|
|
175
104
|
"notes": [
|
|
176
105
|
"roles.action = Indigo Ink filled CTA; roles.brand = Midnight Ink wordmark.",
|
|
177
|
-
"Elevation none
|
|
106
|
+
"Elevation none \u2014 tint ladder + 1px frost rules; never box-shadow.",
|
|
178
107
|
"Control radius 4px (not pill); tags may stay full-pill.",
|
|
179
108
|
"Typography weight 300 is the product signature (Inter Tight substitute).",
|
|
180
109
|
"Pair solid CTA with ghost outline (lavender border) as secondary."
|
package/brands/vanta/brand.json
CHANGED
|
@@ -15,7 +15,6 @@
|
|
|
15
15
|
"muted": "240 20% 93%",
|
|
16
16
|
"mutedForeground": "238 11% 48%",
|
|
17
17
|
"border": "240 17% 11%",
|
|
18
|
-
"input": "0 0% 100%",
|
|
19
18
|
"ring": "268 95% 39%",
|
|
20
19
|
"destructive": "0 72% 51%",
|
|
21
20
|
"destructiveForeground": "0 0% 100%",
|
|
@@ -44,7 +43,6 @@
|
|
|
44
43
|
"destructive": "0 72% 51%",
|
|
45
44
|
"destructiveForeground": "0 0% 100%",
|
|
46
45
|
"border": "240 17% 11%",
|
|
47
|
-
"input": "0 0% 100%",
|
|
48
46
|
"ring": "268 95% 39%",
|
|
49
47
|
"warning": "44 100% 53%",
|
|
50
48
|
"warningForeground": "240 17% 11%",
|
|
@@ -72,105 +70,23 @@
|
|
|
72
70
|
"typography": {
|
|
73
71
|
"fontSans": "'Inter Variable', 'Inter', ui-sans-serif, system-ui, sans-serif",
|
|
74
72
|
"fontDisplay": "'Reckless', 'Source Serif 4', 'Lora', ui-serif, Georgia, serif",
|
|
75
|
-
"headingWeight": 500
|
|
76
|
-
"faces": [
|
|
77
|
-
{
|
|
78
|
-
"family": "Inter Variable",
|
|
79
|
-
"src": [
|
|
80
|
-
{
|
|
81
|
-
"url": "https://cdn.jsdelivr.net/fontsource/fonts/inter:vf@latest/latin-wght-normal.woff2",
|
|
82
|
-
"format": "woff2"
|
|
83
|
-
}
|
|
84
|
-
],
|
|
85
|
-
"weight": "100 900",
|
|
86
|
-
"display": "swap"
|
|
87
|
-
},
|
|
88
|
-
{
|
|
89
|
-
"family": "Reckless",
|
|
90
|
-
"src": [
|
|
91
|
-
{
|
|
92
|
-
"url": "/brand-assets/reckless-regular.woff2",
|
|
93
|
-
"format": "woff2"
|
|
94
|
-
}
|
|
95
|
-
],
|
|
96
|
-
"weight": 400,
|
|
97
|
-
"display": "swap"
|
|
98
|
-
},
|
|
99
|
-
{
|
|
100
|
-
"family": "Reckless",
|
|
101
|
-
"src": [
|
|
102
|
-
{
|
|
103
|
-
"url": "/brand-assets/reckless-medium.woff2",
|
|
104
|
-
"format": "woff2"
|
|
105
|
-
}
|
|
106
|
-
],
|
|
107
|
-
"weight": 500,
|
|
108
|
-
"display": "swap"
|
|
109
|
-
}
|
|
110
|
-
]
|
|
73
|
+
"headingWeight": 500
|
|
111
74
|
},
|
|
112
|
-
"
|
|
113
|
-
"
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
"fontSize": "16px",
|
|
128
|
-
"lineHeight": 1.5,
|
|
129
|
-
"fontWeight": 400,
|
|
130
|
-
"letterSpacing": "-0.02px"
|
|
131
|
-
},
|
|
132
|
-
"subheading": {
|
|
133
|
-
"fontSize": "20px",
|
|
134
|
-
"lineHeight": 1.4,
|
|
135
|
-
"fontWeight": 500
|
|
136
|
-
},
|
|
137
|
-
"headingSm": {
|
|
138
|
-
"fontSize": "24px",
|
|
139
|
-
"lineHeight": 1.35,
|
|
140
|
-
"fontWeight": 500
|
|
141
|
-
},
|
|
142
|
-
"heading": {
|
|
143
|
-
"fontSize": "32px",
|
|
144
|
-
"lineHeight": 1.3,
|
|
145
|
-
"fontWeight": 500
|
|
146
|
-
}
|
|
147
|
-
},
|
|
148
|
-
"marketing": {
|
|
149
|
-
"body": {
|
|
150
|
-
"fontSize": "16px",
|
|
151
|
-
"lineHeight": 1.5,
|
|
152
|
-
"fontWeight": 400,
|
|
153
|
-
"letterSpacing": "-0.02px"
|
|
154
|
-
},
|
|
155
|
-
"heading": {
|
|
156
|
-
"fontSize": "42px",
|
|
157
|
-
"lineHeight": 1.2,
|
|
158
|
-
"fontWeight": 400,
|
|
159
|
-
"letterSpacing": "-0.84px"
|
|
160
|
-
},
|
|
161
|
-
"headingLg": {
|
|
162
|
-
"fontSize": "56px",
|
|
163
|
-
"lineHeight": 1.15,
|
|
164
|
-
"fontWeight": 400,
|
|
165
|
-
"letterSpacing": "-1.12px"
|
|
166
|
-
},
|
|
167
|
-
"display": {
|
|
168
|
-
"fontSize": "90px",
|
|
169
|
-
"lineHeight": 1.1,
|
|
170
|
-
"fontWeight": 400,
|
|
171
|
-
"letterSpacing": "-1.62px"
|
|
172
|
-
}
|
|
173
|
-
}
|
|
75
|
+
"motion": {
|
|
76
|
+
"easeOut": "cubic-bezier(0.33, 1, 0.68, 1)",
|
|
77
|
+
"easeInOut": "cubic-bezier(0.37, 0, 0.63, 1)",
|
|
78
|
+
"micro": 120,
|
|
79
|
+
"flow": 240,
|
|
80
|
+
"reveal": 380,
|
|
81
|
+
"cinematic": 620
|
|
82
|
+
},
|
|
83
|
+
"spacing": {
|
|
84
|
+
"xs": "0.75rem",
|
|
85
|
+
"sm": "1.125rem",
|
|
86
|
+
"md": "1.75rem",
|
|
87
|
+
"lg": "2.5rem",
|
|
88
|
+
"xl": "3.5rem",
|
|
89
|
+
"2xl": "5rem"
|
|
174
90
|
},
|
|
175
91
|
"extensions": {
|
|
176
92
|
"categories": {
|
|
@@ -189,7 +105,7 @@
|
|
|
189
105
|
"notes": [
|
|
190
106
|
"roles.action = Vivid Violet (filled CTA only).",
|
|
191
107
|
"roles.brand = Indigo Ink (logo / wordmark / brand-mark).",
|
|
192
|
-
"Elevation none
|
|
108
|
+
"Elevation none \u2014 1px carbon borders frame cards; no drop-shadow.",
|
|
193
109
|
"Full-pill controls (999px); cards 16px.",
|
|
194
110
|
"UI = Inter Variable; marketing display = Reckless serif.",
|
|
195
111
|
"Lavender wash is marketing hero surface (decorative), not product chrome fill."
|
package/brands/vercel/brand.json
CHANGED
|
@@ -21,7 +21,6 @@
|
|
|
21
21
|
"destructive": "0 72% 51%",
|
|
22
22
|
"destructiveForeground": "0 0% 100%",
|
|
23
23
|
"border": "0 0% 92%",
|
|
24
|
-
"input": "0 0% 100%",
|
|
25
24
|
"ring": "0 0% 9%",
|
|
26
25
|
"success": "133 50% 32%",
|
|
27
26
|
"successForeground": "0 0% 100%",
|
|
@@ -48,7 +47,6 @@
|
|
|
48
47
|
"destructive": "0 72% 51%",
|
|
49
48
|
"destructiveForeground": "0 0% 100%",
|
|
50
49
|
"border": "0 0% 92%",
|
|
51
|
-
"input": "0 0% 100%",
|
|
52
50
|
"ring": "0 0% 9%",
|
|
53
51
|
"success": "133 50% 32%",
|
|
54
52
|
"successForeground": "0 0% 100%",
|
|
@@ -75,7 +73,6 @@
|
|
|
75
73
|
"destructive": "0 72% 51%",
|
|
76
74
|
"destructiveForeground": "0 0% 100%",
|
|
77
75
|
"border": "0 0% 16%",
|
|
78
|
-
"input": "0 0% 4%",
|
|
79
76
|
"ring": "0 0% 100%",
|
|
80
77
|
"success": "133 49% 40%",
|
|
81
78
|
"successForeground": "0 0% 100%",
|
|
@@ -106,70 +103,23 @@
|
|
|
106
103
|
"fontSans": "'Geist Sans', 'Geist', ui-sans-serif, system-ui, sans-serif",
|
|
107
104
|
"fontMono": "'Geist Mono', ui-monospace, Menlo, monospace",
|
|
108
105
|
"fontDisplay": "'Geist Sans', 'Geist', ui-sans-serif, system-ui, sans-serif",
|
|
109
|
-
"headingWeight": 450
|
|
110
|
-
"faces": [
|
|
111
|
-
{
|
|
112
|
-
"family": "Geist Sans",
|
|
113
|
-
"src": [
|
|
114
|
-
{
|
|
115
|
-
"url": "https://cdn.jsdelivr.net/fontsource/fonts/geist-sans:vf@latest/latin-wght-normal.woff2",
|
|
116
|
-
"format": "woff2"
|
|
117
|
-
}
|
|
118
|
-
],
|
|
119
|
-
"weight": "100 900",
|
|
120
|
-
"display": "swap"
|
|
121
|
-
}
|
|
122
|
-
]
|
|
106
|
+
"headingWeight": 450
|
|
123
107
|
},
|
|
124
|
-
"
|
|
125
|
-
"
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
"fontWeight": 400
|
|
140
|
-
},
|
|
141
|
-
"heading": {
|
|
142
|
-
"fontSize": "30px",
|
|
143
|
-
"lineHeight": 1.1,
|
|
144
|
-
"fontWeight": 500,
|
|
145
|
-
"letterSpacing": "-1.5px"
|
|
146
|
-
}
|
|
147
|
-
},
|
|
148
|
-
"marketing": {
|
|
149
|
-
"body": {
|
|
150
|
-
"fontSize": "16px",
|
|
151
|
-
"lineHeight": 1.5,
|
|
152
|
-
"fontWeight": 400
|
|
153
|
-
},
|
|
154
|
-
"heading": {
|
|
155
|
-
"fontSize": "30px",
|
|
156
|
-
"lineHeight": 1.1,
|
|
157
|
-
"fontWeight": 450,
|
|
158
|
-
"letterSpacing": "-1.5px"
|
|
159
|
-
},
|
|
160
|
-
"headingLg": {
|
|
161
|
-
"fontSize": "56px",
|
|
162
|
-
"lineHeight": 1,
|
|
163
|
-
"fontWeight": 450,
|
|
164
|
-
"letterSpacing": "-3.36px"
|
|
165
|
-
},
|
|
166
|
-
"display": {
|
|
167
|
-
"fontSize": "64px",
|
|
168
|
-
"lineHeight": 1,
|
|
169
|
-
"fontWeight": 450,
|
|
170
|
-
"letterSpacing": "-3.84px"
|
|
171
|
-
}
|
|
172
|
-
}
|
|
108
|
+
"motion": {
|
|
109
|
+
"easeOut": "cubic-bezier(0, 0, 0.2, 1)",
|
|
110
|
+
"easeInOut": "cubic-bezier(0.4, 0, 0.2, 1)",
|
|
111
|
+
"micro": 100,
|
|
112
|
+
"flow": 150,
|
|
113
|
+
"reveal": 200,
|
|
114
|
+
"cinematic": 300
|
|
115
|
+
},
|
|
116
|
+
"spacing": {
|
|
117
|
+
"xs": "0.5rem",
|
|
118
|
+
"sm": "0.75rem",
|
|
119
|
+
"md": "1rem",
|
|
120
|
+
"lg": "1.5rem",
|
|
121
|
+
"xl": "2rem",
|
|
122
|
+
"2xl": "3rem"
|
|
173
123
|
},
|
|
174
124
|
"extensions": {
|
|
175
125
|
"categories": {
|
|
@@ -178,7 +128,7 @@
|
|
|
178
128
|
},
|
|
179
129
|
"sourceUrl": "https://vercel.com",
|
|
180
130
|
"notes": [
|
|
181
|
-
"Dual-mode monochrome
|
|
131
|
+
"Dual-mode monochrome \u2014 light: Obsidian CTA; dark: white CTA on carbon.",
|
|
182
132
|
"Elevation is hairline double-ring, never drop-shadow.",
|
|
183
133
|
"Spectrum/solar gradients are marketing-only decorative (not product chrome)."
|
|
184
134
|
]
|
|
@@ -195,7 +145,6 @@
|
|
|
195
145
|
"muted": "0 0% 92%",
|
|
196
146
|
"mutedForeground": "0 0% 40%",
|
|
197
147
|
"border": "0 0% 92%",
|
|
198
|
-
"input": "0 0% 100%",
|
|
199
148
|
"ring": "0 0% 9%",
|
|
200
149
|
"destructive": "0 72% 51%",
|
|
201
150
|
"destructiveForeground": "0 0% 100%",
|