oh-my-design-cli 0.1.0 → 0.1.2

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 (205) hide show
  1. package/README.ko.md +3 -2
  2. package/README.md +3 -2
  3. package/dist/bin/oh-my-design.js +5 -5
  4. package/dist/bin/oh-my-design.js.map +1 -1
  5. package/dist/{init-STACB7E5.js → init-UMM4XIV5.js} +42 -2
  6. package/dist/init-UMM4XIV5.js.map +1 -0
  7. package/dist/{sync-P7X4S2DK.js → sync-FDYRKNFE.js} +16 -3
  8. package/dist/sync-FDYRKNFE.js.map +1 -0
  9. package/package.json +3 -3
  10. package/dist/init-STACB7E5.js.map +0 -1
  11. package/dist/sync-P7X4S2DK.js.map +0 -1
  12. package/references/Claude-Design-Sys-Prompt.txt +0 -421
  13. package/references/airbnb/README.md +0 -23
  14. package/references/airbnb/preview-dark.html +0 -234
  15. package/references/airbnb/preview.html +0 -233
  16. package/references/airtable/README.md +0 -23
  17. package/references/airtable/preview-dark.html +0 -165
  18. package/references/airtable/preview.html +0 -164
  19. package/references/apple/README.md +0 -24
  20. package/references/apple/preview-dark.html +0 -420
  21. package/references/apple/preview.html +0 -414
  22. package/references/baemin/README.md +0 -19
  23. package/references/bmw/README.md +0 -23
  24. package/references/bmw/preview-dark.html +0 -211
  25. package/references/bmw/preview.html +0 -210
  26. package/references/cal/README.md +0 -23
  27. package/references/cal/preview-dark.html +0 -449
  28. package/references/cal/preview.html +0 -575
  29. package/references/claude/README.md +0 -24
  30. package/references/claude/preview-dark.html +0 -803
  31. package/references/claude/preview.html +0 -826
  32. package/references/clay/README.md +0 -23
  33. package/references/clay/preview-dark.html +0 -316
  34. package/references/clay/preview.html +0 -315
  35. package/references/clickhouse/README.md +0 -24
  36. package/references/clickhouse/preview-dark.html +0 -834
  37. package/references/clickhouse/preview.html +0 -786
  38. package/references/cohere/README.md +0 -24
  39. package/references/cohere/preview-dark.html +0 -803
  40. package/references/cohere/preview.html +0 -807
  41. package/references/coinbase/README.md +0 -23
  42. package/references/coinbase/preview-dark.html +0 -164
  43. package/references/coinbase/preview.html +0 -163
  44. package/references/composio/README.md +0 -24
  45. package/references/composio/preview-dark.html +0 -958
  46. package/references/composio/preview.html +0 -933
  47. package/references/cursor/README.md +0 -24
  48. package/references/cursor/preview-dark.html +0 -393
  49. package/references/cursor/preview.html +0 -383
  50. package/references/dcard/README.md +0 -12
  51. package/references/dcard/_research/forum-1440px.png +0 -0
  52. package/references/dcard/_research.md +0 -77
  53. package/references/elevenlabs/README.md +0 -23
  54. package/references/elevenlabs/preview-dark.html +0 -252
  55. package/references/elevenlabs/preview.html +0 -251
  56. package/references/expo/README.md +0 -24
  57. package/references/expo/preview-dark.html +0 -533
  58. package/references/expo/preview.html +0 -533
  59. package/references/ferrari/README.md +0 -23
  60. package/references/ferrari/preview-dark.html +0 -1162
  61. package/references/ferrari/preview.html +0 -1122
  62. package/references/figma/README.md +0 -24
  63. package/references/figma/preview-dark.html +0 -822
  64. package/references/figma/preview.html +0 -832
  65. package/references/framer/README.md +0 -23
  66. package/references/framer/preview-dark.html +0 -902
  67. package/references/framer/preview.html +0 -883
  68. package/references/freee/README.md +0 -12
  69. package/references/freee/_research/vibes-storybook-1440px.png +0 -0
  70. package/references/freee/_research.md +0 -77
  71. package/references/hashicorp/README.md +0 -24
  72. package/references/hashicorp/preview-dark.html +0 -1202
  73. package/references/hashicorp/preview.html +0 -1193
  74. package/references/ibm/README.md +0 -24
  75. package/references/ibm/preview-dark.html +0 -443
  76. package/references/ibm/preview.html +0 -428
  77. package/references/intercom/README.md +0 -23
  78. package/references/intercom/preview-dark.html +0 -185
  79. package/references/intercom/preview.html +0 -184
  80. package/references/kakao/README.md +0 -18
  81. package/references/karrot/README.md +0 -18
  82. package/references/kraken/README.md +0 -23
  83. package/references/kraken/preview-dark.html +0 -169
  84. package/references/kraken/preview.html +0 -168
  85. package/references/lamborghini/README.md +0 -23
  86. package/references/lamborghini/preview-dark.html +0 -303
  87. package/references/lamborghini/preview.html +0 -381
  88. package/references/line/README.md +0 -12
  89. package/references/line/_research/home-1440px.png +0 -0
  90. package/references/line/_research.md +0 -65
  91. package/references/linear.app/README.md +0 -24
  92. package/references/linear.app/preview-dark.html +0 -383
  93. package/references/linear.app/preview.html +0 -373
  94. package/references/lovable/README.md +0 -24
  95. package/references/lovable/preview-dark.html +0 -349
  96. package/references/lovable/preview.html +0 -348
  97. package/references/mercari/README.md +0 -12
  98. package/references/mercari/_research/home-1440px.png +0 -0
  99. package/references/mercari/_research.md +0 -77
  100. package/references/minimax/README.md +0 -24
  101. package/references/minimax/preview-dark.html +0 -1262
  102. package/references/minimax/preview.html +0 -1248
  103. package/references/mintlify/README.md +0 -24
  104. package/references/mintlify/preview-dark.html +0 -409
  105. package/references/mintlify/preview.html +0 -398
  106. package/references/miro/README.md +0 -23
  107. package/references/miro/preview-dark.html +0 -174
  108. package/references/miro/preview.html +0 -173
  109. package/references/mistral.ai/README.md +0 -24
  110. package/references/mistral.ai/preview-dark.html +0 -806
  111. package/references/mistral.ai/preview.html +0 -805
  112. package/references/mongodb/README.md +0 -23
  113. package/references/mongodb/preview-dark.html +0 -260
  114. package/references/mongodb/preview.html +0 -259
  115. package/references/notion/README.md +0 -24
  116. package/references/notion/preview-dark.html +0 -372
  117. package/references/notion/preview.html +0 -364
  118. package/references/nvidia/README.md +0 -24
  119. package/references/nvidia/preview-dark.html +0 -374
  120. package/references/nvidia/preview.html +0 -366
  121. package/references/ollama/README.md +0 -24
  122. package/references/ollama/preview-dark.html +0 -678
  123. package/references/ollama/preview.html +0 -678
  124. package/references/opencode.ai/README.md +0 -24
  125. package/references/opencode.ai/preview-dark.html +0 -366
  126. package/references/opencode.ai/preview.html +0 -357
  127. package/references/pinkoi/README.md +0 -12
  128. package/references/pinkoi/_research/browse-1440px.png +0 -0
  129. package/references/pinkoi/_research.md +0 -115
  130. package/references/pinterest/README.md +0 -23
  131. package/references/pinterest/preview-dark.html +0 -233
  132. package/references/pinterest/preview.html +0 -232
  133. package/references/posthog/README.md +0 -23
  134. package/references/posthog/preview-dark.html +0 -699
  135. package/references/posthog/preview.html +0 -749
  136. package/references/raycast/README.md +0 -23
  137. package/references/raycast/preview-dark.html +0 -606
  138. package/references/raycast/preview.html +0 -688
  139. package/references/renault/README.md +0 -23
  140. package/references/renault/preview-dark.html +0 -406
  141. package/references/renault/preview.html +0 -606
  142. package/references/replicate/README.md +0 -24
  143. package/references/replicate/preview-dark.html +0 -828
  144. package/references/replicate/preview.html +0 -831
  145. package/references/resend/README.md +0 -23
  146. package/references/resend/preview-dark.html +0 -355
  147. package/references/resend/preview.html +0 -354
  148. package/references/revolut/README.md +0 -23
  149. package/references/revolut/preview-dark.html +0 -234
  150. package/references/revolut/preview.html +0 -233
  151. package/references/runwayml/README.md +0 -24
  152. package/references/runwayml/preview-dark.html +0 -664
  153. package/references/runwayml/preview.html +0 -665
  154. package/references/sanity/README.md +0 -24
  155. package/references/sanity/preview-dark.html +0 -990
  156. package/references/sanity/preview.html +0 -1135
  157. package/references/sentry/README.md +0 -24
  158. package/references/sentry/preview-dark.html +0 -626
  159. package/references/sentry/preview.html +0 -951
  160. package/references/spacex/README.md +0 -23
  161. package/references/spacex/preview-dark.html +0 -221
  162. package/references/spacex/preview.html +0 -220
  163. package/references/spotify/README.md +0 -23
  164. package/references/spotify/preview-dark.html +0 -231
  165. package/references/spotify/preview.html +0 -230
  166. package/references/stripe/README.md +0 -24
  167. package/references/stripe/preview-dark.html +0 -428
  168. package/references/stripe/preview.html +0 -419
  169. package/references/supabase/README.md +0 -24
  170. package/references/supabase/preview-dark.html +0 -977
  171. package/references/supabase/preview.html +0 -955
  172. package/references/superhuman/README.md +0 -23
  173. package/references/superhuman/preview-dark.html +0 -973
  174. package/references/superhuman/preview.html +0 -951
  175. package/references/tesla/README.md +0 -23
  176. package/references/tesla/preview-dark.html +0 -947
  177. package/references/tesla/preview.html +0 -925
  178. package/references/together.ai/README.md +0 -24
  179. package/references/together.ai/preview-dark.html +0 -892
  180. package/references/together.ai/preview.html +0 -897
  181. package/references/toss/README.md +0 -19
  182. package/references/uber/README.md +0 -24
  183. package/references/uber/preview-dark.html +0 -1120
  184. package/references/uber/preview.html +0 -1119
  185. package/references/vercel/README.md +0 -24
  186. package/references/vercel/preview-dark.html +0 -368
  187. package/references/vercel/preview.html +0 -367
  188. package/references/voltagent/README.md +0 -24
  189. package/references/voltagent/preview-dark.html +0 -487
  190. package/references/voltagent/preview.html +0 -766
  191. package/references/warp/README.md +0 -23
  192. package/references/warp/preview-dark.html +0 -500
  193. package/references/warp/preview.html +0 -533
  194. package/references/webflow/README.md +0 -23
  195. package/references/webflow/preview-dark.html +0 -147
  196. package/references/webflow/preview.html +0 -146
  197. package/references/wise/README.md +0 -23
  198. package/references/wise/preview-dark.html +0 -230
  199. package/references/wise/preview.html +0 -229
  200. package/references/x.ai/README.md +0 -24
  201. package/references/x.ai/preview-dark.html +0 -356
  202. package/references/x.ai/preview.html +0 -407
  203. package/references/zapier/README.md +0 -24
  204. package/references/zapier/preview-dark.html +0 -380
  205. package/references/zapier/preview.html +0 -372
@@ -1,947 +0,0 @@
1
- <!DOCTYPE html>
2
- <html lang="en">
3
- <head>
4
- <meta charset="UTF-8">
5
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <title>Design System Inspired by Tesla</title>
7
- <link rel="preconnect" href="https://fonts.googleapis.com">
8
- <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
9
- <link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500&display=swap" rel="stylesheet">
10
- <style>
11
- :root {
12
- --electric-blue: #3E6AE1;
13
- --pure-white: #FFFFFF;
14
- --carbon-dark: #171A20;
15
- --graphite: #393C41;
16
- --pewter: #5C5E62;
17
- --silver-fog: #8E8E8E;
18
- --cloud-gray: #2A2D33;
19
- --pale-silver: #3A3D43;
20
- --light-ash: #1E2127;
21
- --surface-dark: #0D0F13;
22
- --text-primary: #E8E8E8;
23
- --text-secondary: #B0B2B5;
24
- --text-muted: #8E8E8E;
25
- --border-dark: #2A2D33;
26
- --font-display: 'Inter', -apple-system, Arial, sans-serif;
27
- --font-text: 'Inter', -apple-system, Arial, sans-serif;
28
- }
29
-
30
- * { margin: 0; padding: 0; box-sizing: border-box; }
31
-
32
- body {
33
- font-family: var(--font-text);
34
- background: var(--carbon-dark);
35
- color: var(--text-secondary);
36
- font-size: 14px;
37
- font-weight: 400;
38
- line-height: 1.43;
39
- -webkit-font-smoothing: antialiased;
40
- }
41
-
42
- /* DARK MODE BADGE */
43
- .dark-badge {
44
- position: fixed;
45
- top: 16px;
46
- right: 16px;
47
- z-index: 200;
48
- background: var(--electric-blue);
49
- color: var(--pure-white);
50
- padding: 6px 14px;
51
- border-radius: 4px;
52
- font-size: 11px;
53
- font-weight: 500;
54
- letter-spacing: 1px;
55
- text-transform: uppercase;
56
- }
57
-
58
- /* NAV */
59
- nav {
60
- position: sticky;
61
- top: 0;
62
- z-index: 100;
63
- display: flex;
64
- align-items: center;
65
- justify-content: space-between;
66
- padding: 12px 40px;
67
- background: var(--carbon-dark);
68
- min-height: 56px;
69
- border-bottom: 1px solid var(--border-dark);
70
- }
71
- .nav-brand {
72
- font-family: var(--font-text);
73
- font-size: 14px;
74
- font-weight: 500;
75
- color: var(--text-primary);
76
- text-decoration: none;
77
- letter-spacing: 3px;
78
- text-transform: uppercase;
79
- }
80
- .nav-links {
81
- display: flex;
82
- align-items: center;
83
- gap: 8px;
84
- list-style: none;
85
- }
86
- .nav-links a {
87
- font-family: var(--font-text);
88
- font-size: 14px;
89
- font-weight: 500;
90
- color: var(--text-primary);
91
- text-decoration: none;
92
- padding: 4px 16px;
93
- border-radius: 4px;
94
- min-height: 32px;
95
- display: inline-flex;
96
- align-items: center;
97
- transition: color 0.33s, background-color 0.33s;
98
- }
99
- .nav-links a:hover { background: var(--light-ash); }
100
- .nav-cta {
101
- background: var(--electric-blue);
102
- color: var(--pure-white) !important;
103
- padding: 8px 24px;
104
- border-radius: 4px;
105
- font-family: var(--font-text);
106
- font-size: 14px;
107
- font-weight: 500;
108
- text-decoration: none;
109
- transition: background-color 0.33s;
110
- min-height: 40px;
111
- display: inline-flex;
112
- align-items: center;
113
- }
114
- .nav-cta:hover { background: #4A78F0; }
115
-
116
- /* HERO */
117
- .hero {
118
- position: relative;
119
- min-height: 100vh;
120
- display: flex;
121
- flex-direction: column;
122
- align-items: center;
123
- justify-content: flex-start;
124
- padding: 80px 40px 60px;
125
- background: linear-gradient(180deg, #0a0c10 0%, #12151c 30%, #1a1d25 70%, #171A20 100%);
126
- text-align: center;
127
- overflow: hidden;
128
- }
129
- .hero::after {
130
- content: '';
131
- position: absolute;
132
- bottom: 0;
133
- left: 0;
134
- right: 0;
135
- height: 200px;
136
- background: linear-gradient(transparent, rgba(0,0,0,0.2));
137
- pointer-events: none;
138
- }
139
- .hero h1 {
140
- font-family: var(--font-display);
141
- font-size: 40px;
142
- font-weight: 500;
143
- line-height: 48px;
144
- letter-spacing: normal;
145
- color: var(--text-primary);
146
- margin-bottom: 8px;
147
- }
148
- .hero .subtitle {
149
- font-family: var(--font-text);
150
- font-size: 14px;
151
- font-weight: 400;
152
- color: var(--text-muted);
153
- margin-bottom: 32px;
154
- line-height: 20px;
155
- }
156
- .hero .promo {
157
- font-family: var(--font-text);
158
- font-size: 14px;
159
- font-weight: 400;
160
- color: var(--electric-blue);
161
- margin-bottom: 24px;
162
- text-decoration: underline;
163
- text-underline-offset: 3px;
164
- }
165
- .hero-buttons {
166
- display: flex;
167
- gap: 16px;
168
- margin-bottom: 40px;
169
- }
170
- .btn-primary {
171
- background: var(--electric-blue);
172
- color: var(--pure-white);
173
- border: 3px solid transparent;
174
- border-radius: 4px;
175
- padding: 4px 24px;
176
- font-family: var(--font-text);
177
- font-size: 14px;
178
- font-weight: 500;
179
- min-height: 40px;
180
- min-width: 200px;
181
- display: inline-flex;
182
- align-items: center;
183
- justify-content: center;
184
- cursor: pointer;
185
- transition: border-color 0.33s, background-color 0.33s, color 0.33s, box-shadow 0.25s;
186
- text-decoration: none;
187
- }
188
- .btn-primary:hover { background: #4A78F0; }
189
- .btn-secondary {
190
- background: var(--light-ash);
191
- color: var(--text-primary);
192
- border: 3px solid transparent;
193
- border-radius: 4px;
194
- padding: 4px 24px;
195
- font-family: var(--font-text);
196
- font-size: 14px;
197
- font-weight: 500;
198
- min-height: 40px;
199
- min-width: 160px;
200
- display: inline-flex;
201
- align-items: center;
202
- justify-content: center;
203
- cursor: pointer;
204
- transition: border-color 0.33s, background-color 0.33s, color 0.33s, box-shadow 0.25s;
205
- text-decoration: none;
206
- }
207
- .btn-secondary:hover { background: var(--pale-silver); }
208
-
209
- /* SECTIONS */
210
- .section {
211
- padding: 80px 40px;
212
- max-width: 1200px;
213
- margin: 0 auto;
214
- }
215
- .section-title {
216
- font-family: var(--font-display);
217
- font-size: 28px;
218
- font-weight: 500;
219
- color: var(--text-primary);
220
- margin-bottom: 8px;
221
- line-height: 1.2;
222
- }
223
- .section-desc {
224
- font-family: var(--font-text);
225
- font-size: 14px;
226
- color: var(--text-muted);
227
- margin-bottom: 40px;
228
- line-height: 20px;
229
- }
230
- .section-divider {
231
- border: none;
232
- border-top: 1px solid var(--border-dark);
233
- margin: 0 40px;
234
- max-width: 1200px;
235
- margin-left: auto;
236
- margin-right: auto;
237
- }
238
-
239
- /* 1. COLOR PALETTE */
240
- .color-group-label {
241
- font-family: var(--font-text);
242
- font-size: 14px;
243
- font-weight: 500;
244
- color: var(--text-primary);
245
- margin-bottom: 16px;
246
- margin-top: 24px;
247
- }
248
- .color-grid {
249
- display: grid;
250
- grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
251
- gap: 16px;
252
- margin-bottom: 32px;
253
- }
254
- .color-swatch {
255
- border-radius: 4px;
256
- overflow: hidden;
257
- }
258
- .color-swatch .swatch-block {
259
- height: 80px;
260
- border-radius: 4px 4px 0 0;
261
- }
262
- .color-swatch .swatch-info {
263
- padding: 12px;
264
- background: var(--light-ash);
265
- border: 1px solid var(--border-dark);
266
- border-top: none;
267
- border-radius: 0 0 4px 4px;
268
- }
269
- .color-swatch .swatch-name {
270
- font-size: 13px;
271
- font-weight: 500;
272
- color: var(--text-primary);
273
- margin-bottom: 2px;
274
- }
275
- .color-swatch .swatch-hex {
276
- font-size: 12px;
277
- color: var(--text-muted);
278
- margin-bottom: 4px;
279
- font-family: monospace;
280
- }
281
- .color-swatch .swatch-role {
282
- font-size: 11px;
283
- color: var(--pewter);
284
- line-height: 1.3;
285
- }
286
-
287
- /* 2. TYPOGRAPHY */
288
- .type-sample {
289
- margin-bottom: 32px;
290
- padding-bottom: 24px;
291
- border-bottom: 1px solid var(--border-dark);
292
- }
293
- .type-sample:last-child { border-bottom: none; }
294
- .type-label {
295
- font-size: 12px;
296
- font-weight: 400;
297
- color: var(--text-muted);
298
- margin-top: 8px;
299
- font-family: monospace;
300
- }
301
-
302
- /* 3. BUTTONS */
303
- .button-row {
304
- display: flex;
305
- flex-wrap: wrap;
306
- gap: 16px;
307
- align-items: center;
308
- margin-bottom: 16px;
309
- }
310
- .btn-nav {
311
- background: transparent;
312
- color: var(--text-primary);
313
- border: none;
314
- border-radius: 4px;
315
- padding: 4px 16px;
316
- font-family: var(--font-text);
317
- font-size: 14px;
318
- font-weight: 500;
319
- min-height: 32px;
320
- display: inline-flex;
321
- align-items: center;
322
- cursor: pointer;
323
- transition: color 0.33s, background-color 0.33s;
324
- }
325
- .btn-nav:hover { background: var(--light-ash); }
326
- .btn-text-link {
327
- background: none;
328
- border: none;
329
- color: var(--text-muted);
330
- font-family: var(--font-text);
331
- font-size: 14px;
332
- font-weight: 400;
333
- cursor: pointer;
334
- padding: 4px 0;
335
- transition: box-shadow 0.33s, color 0.33s;
336
- text-decoration: none;
337
- }
338
- .btn-text-link:hover {
339
- box-shadow: 0 1px 0 var(--text-muted);
340
- }
341
-
342
- /* 4. CARDS */
343
- .card-grid {
344
- display: grid;
345
- grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
346
- gap: 16px;
347
- margin-bottom: 32px;
348
- }
349
- .card {
350
- background: var(--light-ash);
351
- border-radius: 4px;
352
- overflow: hidden;
353
- border: 1px solid var(--border-dark);
354
- }
355
- .card-image {
356
- height: 200px;
357
- background: var(--surface-dark);
358
- display: flex;
359
- align-items: center;
360
- justify-content: center;
361
- }
362
- .card-image-placeholder {
363
- font-size: 40px;
364
- font-weight: 500;
365
- color: var(--pale-silver);
366
- font-family: var(--font-display);
367
- }
368
- .card-body {
369
- padding: 20px;
370
- text-align: center;
371
- }
372
- .card-title {
373
- font-size: 17px;
374
- font-weight: 500;
375
- color: var(--text-primary);
376
- margin-bottom: 8px;
377
- font-family: var(--font-text);
378
- }
379
- .card-links {
380
- display: flex;
381
- gap: 16px;
382
- justify-content: center;
383
- }
384
- .card-links a {
385
- font-size: 14px;
386
- font-weight: 400;
387
- color: var(--text-muted);
388
- text-decoration: none;
389
- transition: box-shadow 0.33s, color 0.33s;
390
- }
391
- .card-links a:hover { box-shadow: 0 1px 0 var(--text-muted); }
392
-
393
- .card-category {
394
- border-radius: 12px;
395
- overflow: hidden;
396
- position: relative;
397
- height: 180px;
398
- display: flex;
399
- align-items: flex-start;
400
- padding: 24px;
401
- }
402
- .card-category .cat-label {
403
- font-size: 16px;
404
- font-weight: 500;
405
- color: var(--pure-white);
406
- position: relative;
407
- z-index: 1;
408
- }
409
-
410
- /* 5. FORMS */
411
- .form-grid {
412
- display: grid;
413
- grid-template-columns: 1fr 1fr;
414
- gap: 24px;
415
- margin-bottom: 32px;
416
- }
417
- .form-group { display: flex; flex-direction: column; gap: 6px; }
418
- .form-label {
419
- font-size: 14px;
420
- font-weight: 500;
421
- color: var(--text-primary);
422
- }
423
- .form-input {
424
- font-family: var(--font-text);
425
- font-size: 14px;
426
- color: var(--text-primary);
427
- background: var(--surface-dark);
428
- border: 1px solid var(--pale-silver);
429
- border-radius: 4px;
430
- padding: 10px 12px;
431
- min-height: 40px;
432
- outline: none;
433
- transition: border-color 0.33s;
434
- }
435
- .form-input::placeholder { color: var(--pewter); }
436
- .form-input:focus { border-color: var(--electric-blue); }
437
- .form-input.error { border-color: #E74C3C; }
438
- .form-textarea {
439
- font-family: var(--font-text);
440
- font-size: 14px;
441
- color: var(--text-primary);
442
- background: var(--surface-dark);
443
- border: 1px solid var(--pale-silver);
444
- border-radius: 4px;
445
- padding: 10px 12px;
446
- min-height: 100px;
447
- outline: none;
448
- resize: vertical;
449
- transition: border-color 0.33s;
450
- }
451
- .form-textarea::placeholder { color: var(--pewter); }
452
- .form-textarea:focus { border-color: var(--electric-blue); }
453
-
454
- /* 6. SPACING */
455
- .spacing-row {
456
- display: flex;
457
- align-items: center;
458
- gap: 16px;
459
- margin-bottom: 12px;
460
- }
461
- .spacing-box {
462
- height: 32px;
463
- background: var(--electric-blue);
464
- border-radius: 4px;
465
- opacity: 0.6;
466
- }
467
- .spacing-label {
468
- font-size: 12px;
469
- color: var(--text-muted);
470
- font-family: monospace;
471
- min-width: 80px;
472
- }
473
-
474
- /* 7. RADIUS */
475
- .radius-row {
476
- display: flex;
477
- gap: 24px;
478
- flex-wrap: wrap;
479
- margin-bottom: 32px;
480
- }
481
- .radius-item {
482
- text-align: center;
483
- }
484
- .radius-box {
485
- width: 80px;
486
- height: 80px;
487
- background: var(--light-ash);
488
- border: 2px solid var(--pale-silver);
489
- margin-bottom: 8px;
490
- }
491
- .radius-value {
492
- font-size: 12px;
493
- font-weight: 500;
494
- color: var(--text-primary);
495
- font-family: monospace;
496
- }
497
- .radius-context {
498
- font-size: 11px;
499
- color: var(--text-muted);
500
- }
501
-
502
- /* 8. ELEVATION */
503
- .elevation-row {
504
- display: flex;
505
- gap: 32px;
506
- flex-wrap: wrap;
507
- margin-bottom: 32px;
508
- }
509
- .elevation-card {
510
- width: 200px;
511
- padding: 24px;
512
- border-radius: 4px;
513
- text-align: center;
514
- background: var(--light-ash);
515
- }
516
- .elevation-name {
517
- font-size: 13px;
518
- font-weight: 500;
519
- color: var(--text-primary);
520
- margin-bottom: 4px;
521
- }
522
- .elevation-desc {
523
- font-size: 11px;
524
- color: var(--text-muted);
525
- }
526
-
527
- /* FOOTER */
528
- footer {
529
- padding: 40px;
530
- text-align: center;
531
- border-top: 1px solid var(--border-dark);
532
- }
533
- footer p {
534
- font-size: 12px;
535
- color: var(--pewter);
536
- }
537
-
538
- @media (max-width: 768px) {
539
- .hero h1 { font-size: 28px; line-height: 36px; }
540
- .hero-buttons { flex-direction: column; align-items: center; }
541
- .btn-primary, .btn-secondary { min-width: 240px; }
542
- .color-grid { grid-template-columns: repeat(2, 1fr); }
543
- .form-grid { grid-template-columns: 1fr; }
544
- .card-grid { grid-template-columns: 1fr; }
545
- nav { padding: 12px 20px; }
546
- .section { padding: 60px 20px; }
547
- .nav-links { display: none; }
548
- }
549
- </style>
550
- </head>
551
- <body>
552
-
553
- <!-- DARK MODE BADGE -->
554
- <div class="dark-badge">Dark Mode</div>
555
-
556
- <!-- NAV -->
557
- <nav>
558
- <span class="nav-brand">awesome-design-md</span>
559
- <ul class="nav-links">
560
- <li><a href="#">Vehicles</a></li>
561
- <li><a href="#">Energy</a></li>
562
- <li><a href="#">Charging</a></li>
563
- <li><a href="#">Discover</a></li>
564
- <li><a href="#" class="nav-cta">Shop</a></li>
565
- </ul>
566
- </nav>
567
-
568
- <!-- HERO -->
569
- <section class="hero">
570
- <h1>Design System Inspired by Tesla</h1>
571
- <p class="promo">Photography-first. Interface-invisible.</p>
572
- <p class="subtitle">A visual catalog generated from DESIGN.md — every token, every value, every design decision.</p>
573
- <div class="hero-buttons">
574
- <a href="#" class="btn-primary">Order Now</a>
575
- <a href="#" class="btn-secondary">View Inventory</a>
576
- </div>
577
- </section>
578
-
579
- <hr class="section-divider">
580
-
581
- <!-- 1. COLOR PALETTE -->
582
- <section class="section">
583
- <h2 class="section-title">Color Palette</h2>
584
- <p class="section-desc">Tesla's palette is almost ascetic — one blue, three grays, and white. Every surface is monochrome to let photography dominate.</p>
585
-
586
- <div class="color-group-label">Primary</div>
587
- <div class="color-grid">
588
- <div class="color-swatch">
589
- <div class="swatch-block" style="background: #3E6AE1;"></div>
590
- <div class="swatch-info">
591
- <div class="swatch-name">Electric Blue</div>
592
- <div class="swatch-hex">#3E6AE1</div>
593
- <div class="swatch-role">Primary CTA buttons — the only chromatic color</div>
594
- </div>
595
- </div>
596
- <div class="color-swatch">
597
- <div class="swatch-block" style="background: #FFFFFF;"></div>
598
- <div class="swatch-info">
599
- <div class="swatch-name">Pure White</div>
600
- <div class="swatch-hex">#FFFFFF</div>
601
- <div class="swatch-role">Background, surfaces, secondary buttons</div>
602
- </div>
603
- </div>
604
- </div>
605
-
606
- <div class="color-group-label">Surface & Background</div>
607
- <div class="color-grid">
608
- <div class="color-swatch">
609
- <div class="swatch-block" style="background: #F4F4F4;"></div>
610
- <div class="swatch-info">
611
- <div class="swatch-name">Light Ash</div>
612
- <div class="swatch-hex">#F4F4F4</div>
613
- <div class="swatch-role">Alternate surface, hover states</div>
614
- </div>
615
- </div>
616
- <div class="color-swatch">
617
- <div class="swatch-block" style="background: #171A20;"></div>
618
- <div class="swatch-info">
619
- <div class="swatch-name">Carbon Dark</div>
620
- <div class="swatch-hex">#171A20</div>
621
- <div class="swatch-role">Dark surface, hero overlays</div>
622
- </div>
623
- </div>
624
- <div class="color-swatch">
625
- <div class="swatch-block" style="background: rgba(255,255,255,0.75); border: 1px solid #3A3D43;"></div>
626
- <div class="swatch-info">
627
- <div class="swatch-name">Frosted Glass</div>
628
- <div class="swatch-hex">rgba(255,255,255,0.75)</div>
629
- <div class="swatch-role">Nav backdrop-filter on scroll</div>
630
- </div>
631
- </div>
632
- </div>
633
-
634
- <div class="color-group-label">Neutrals & Text</div>
635
- <div class="color-grid">
636
- <div class="color-swatch">
637
- <div class="swatch-block" style="background: #171A20;"></div>
638
- <div class="swatch-info">
639
- <div class="swatch-name">Carbon Dark</div>
640
- <div class="swatch-hex">#171A20</div>
641
- <div class="swatch-role">Headings, navigation text</div>
642
- </div>
643
- </div>
644
- <div class="color-swatch">
645
- <div class="swatch-block" style="background: #393C41;"></div>
646
- <div class="swatch-info">
647
- <div class="swatch-name">Graphite</div>
648
- <div class="swatch-hex">#393C41</div>
649
- <div class="swatch-role">Body text, secondary content</div>
650
- </div>
651
- </div>
652
- <div class="color-swatch">
653
- <div class="swatch-block" style="background: #5C5E62;"></div>
654
- <div class="swatch-info">
655
- <div class="swatch-name">Pewter</div>
656
- <div class="swatch-hex">#5C5E62</div>
657
- <div class="swatch-role">Tertiary text, sub-links</div>
658
- </div>
659
- </div>
660
- <div class="color-swatch">
661
- <div class="swatch-block" style="background: #8E8E8E;"></div>
662
- <div class="swatch-info">
663
- <div class="swatch-name">Silver Fog</div>
664
- <div class="swatch-hex">#8E8E8E</div>
665
- <div class="swatch-role">Placeholders, disabled states</div>
666
- </div>
667
- </div>
668
- <div class="color-swatch">
669
- <div class="swatch-block" style="background: #EEEEEE;"></div>
670
- <div class="swatch-info">
671
- <div class="swatch-name">Cloud Gray</div>
672
- <div class="swatch-hex">#EEEEEE</div>
673
- <div class="swatch-role">Borders, divider lines</div>
674
- </div>
675
- </div>
676
- <div class="color-swatch">
677
- <div class="swatch-block" style="background: #D0D1D2;"></div>
678
- <div class="swatch-info">
679
- <div class="swatch-name">Pale Silver</div>
680
- <div class="swatch-hex">#D0D1D2</div>
681
- <div class="swatch-role">UI borders, delineation</div>
682
- </div>
683
- </div>
684
- </div>
685
- </section>
686
-
687
- <hr class="section-divider">
688
-
689
- <!-- 2. TYPOGRAPHY -->
690
- <section class="section">
691
- <h2 class="section-title">Typography Scale</h2>
692
- <p class="section-desc">Universal Sans Display for heroes, Universal Sans Text for everything else. Only weights 400 and 500. Shown with Inter as the closest available Google Font substitute.</p>
693
-
694
- <div class="type-sample">
695
- <div style="font-family: var(--font-display); font-size: 40px; font-weight: 500; line-height: 48px; color: var(--text-primary);">Model Y</div>
696
- <div class="type-label">Hero Title — 40px / 500 / 48px line-height / Universal Sans Display</div>
697
- </div>
698
-
699
- <div class="type-sample">
700
- <div style="font-family: var(--font-text); font-size: 22px; font-weight: 400; line-height: 20px; color: var(--pure-white); background: var(--surface-dark); padding: 12px 16px; border-radius: 4px; display: inline-block;">0% APR Available</div>
701
- <div class="type-label">Promo Text — 22px / 400 / Universal Sans Text / white on dark</div>
702
- </div>
703
-
704
- <div class="type-sample">
705
- <div style="font-family: var(--font-text); font-size: 17px; font-weight: 500; line-height: 20px; color: var(--text-primary);">Model 3</div>
706
- <div class="type-label">Product Name — 17px / 500 / 20px line-height / Universal Sans Text</div>
707
- </div>
708
-
709
- <div class="type-sample">
710
- <div style="font-family: var(--font-text); font-size: 14px; font-weight: 500; line-height: 16.8px; color: var(--text-primary);">Vehicles &nbsp; Energy &nbsp; Charging &nbsp; Discover &nbsp; Shop</div>
711
- <div class="type-label">Nav Item — 14px / 500 / 16.8px line-height / Universal Sans Text</div>
712
- </div>
713
-
714
- <div class="type-sample">
715
- <div style="font-family: var(--font-text); font-size: 14px; font-weight: 400; line-height: 20px; color: var(--text-secondary);">Tesla's website is an exercise in radical subtraction — a digital showroom where the product is everything and the interface is almost nothing.</div>
716
- <div class="type-label">Body Text — 14px / 400 / 20px line-height / Universal Sans Text</div>
717
- </div>
718
-
719
- <div class="type-sample">
720
- <div style="font-family: var(--font-text); font-size: 14px; font-weight: 400; line-height: 20px; color: var(--text-muted);">Learn &nbsp;&nbsp; Order &nbsp;&nbsp; Experience</div>
721
- <div class="type-label">Sub-link — 14px / 400 / 20px line-height / Pewter (#5C5E62)</div>
722
- </div>
723
- </section>
724
-
725
- <hr class="section-divider">
726
-
727
- <!-- 3. BUTTONS -->
728
- <section class="section">
729
- <h2 class="section-title">Button Variants</h2>
730
- <p class="section-desc">Barely-rounded rectangles (4px radius). One blue for primary, dark surface for secondary, transparent for nav.</p>
731
-
732
- <div class="button-row">
733
- <a href="#" class="btn-primary">Order Now</a>
734
- <span style="font-size:12px; color:var(--text-muted); font-family:monospace;">Primary — bg #3E6AE1, 4px radius, 40px height, 200px width</span>
735
- </div>
736
- <div class="button-row">
737
- <a href="#" class="btn-secondary">View Inventory</a>
738
- <span style="font-size:12px; color:var(--text-muted); font-family:monospace;">Secondary — bg dark surface, 4px radius, 40px height, 160px width</span>
739
- </div>
740
- <div class="button-row">
741
- <button class="btn-nav">Vehicles</button>
742
- <button class="btn-nav">Energy</button>
743
- <button class="btn-nav">Charging</button>
744
- <span style="font-size:12px; color:var(--text-muted); font-family:monospace;">Nav — transparent bg, 4px radius, 32px height</span>
745
- </div>
746
- <div class="button-row">
747
- <a href="#" class="btn-text-link">Learn</a>
748
- <a href="#" class="btn-text-link">Order</a>
749
- <a href="#" class="btn-text-link">Experience</a>
750
- <span style="font-size:12px; color:var(--text-muted); font-family:monospace;">Text Link — no bg, muted color, underline on hover</span>
751
- </div>
752
- </section>
753
-
754
- <hr class="section-divider">
755
-
756
- <!-- 4. CARDS -->
757
- <section class="section">
758
- <h2 class="section-title">Card Examples</h2>
759
- <p class="section-desc">Vehicle cards with subtle dark borders. Category cards with full-bleed photography and 12px radius.</p>
760
-
761
- <div class="color-group-label">Vehicle Cards (Navigation Panel)</div>
762
- <div class="card-grid">
763
- <div class="card">
764
- <div class="card-image">
765
- <span class="card-image-placeholder">S</span>
766
- </div>
767
- <div class="card-body">
768
- <div class="card-title">Model S</div>
769
- <div class="card-links">
770
- <a href="#">Learn</a>
771
- <a href="#">Order</a>
772
- </div>
773
- </div>
774
- </div>
775
- <div class="card">
776
- <div class="card-image">
777
- <span class="card-image-placeholder">3</span>
778
- </div>
779
- <div class="card-body">
780
- <div class="card-title">Model 3</div>
781
- <div class="card-links">
782
- <a href="#">Learn</a>
783
- <a href="#">Order</a>
784
- </div>
785
- </div>
786
- </div>
787
- <div class="card">
788
- <div class="card-image">
789
- <span class="card-image-placeholder">Y</span>
790
- </div>
791
- <div class="card-body">
792
- <div class="card-title">Model Y</div>
793
- <div class="card-links">
794
- <a href="#">Learn</a>
795
- <a href="#">Order</a>
796
- </div>
797
- </div>
798
- </div>
799
- </div>
800
-
801
- <div class="color-group-label">Category Cards (Homepage)</div>
802
- <div style="display:grid; grid-template-columns: 2fr 1fr; gap: 16px; margin-bottom: 32px;">
803
- <div class="card-category" style="background: linear-gradient(135deg, #1a2a3a, #2a3a2a);">
804
- <span class="cat-label">Sport Sedan</span>
805
- </div>
806
- <div class="card-category" style="background: linear-gradient(135deg, #1e2e3e, #1a3a2a);">
807
- <span class="cat-label">Midsize SUV</span>
808
- </div>
809
- </div>
810
- </section>
811
-
812
- <hr class="section-divider">
813
-
814
- <!-- 5. FORMS -->
815
- <section class="section">
816
- <h2 class="section-title">Form Elements</h2>
817
- <p class="section-desc">Minimal input styling with 4px radius and dark borders. Focus state triggers Electric Blue border.</p>
818
-
819
- <div class="form-grid">
820
- <div class="form-group">
821
- <label class="form-label">Default Input</label>
822
- <input class="form-input" type="text" placeholder="Enter your email">
823
- </div>
824
- <div class="form-group">
825
- <label class="form-label">Focus Input</label>
826
- <input class="form-input" type="text" placeholder="Focused state" style="border-color: var(--electric-blue);">
827
- </div>
828
- <div class="form-group">
829
- <label class="form-label">Error Input</label>
830
- <input class="form-input error" type="text" placeholder="Error state" value="Invalid entry">
831
- </div>
832
- <div class="form-group">
833
- <label class="form-label">Textarea</label>
834
- <textarea class="form-textarea" placeholder="Ask a question..."></textarea>
835
- </div>
836
- </div>
837
- </section>
838
-
839
- <hr class="section-divider">
840
-
841
- <!-- 6. SPACING -->
842
- <section class="section">
843
- <h2 class="section-title">Spacing Scale</h2>
844
- <p class="section-desc">8px base unit. Extremely restrained spacing tokens — precision over variety.</p>
845
-
846
- <div class="spacing-row">
847
- <div class="spacing-label">4px</div>
848
- <div class="spacing-box" style="width: 16px;"></div>
849
- <span style="font-size:11px; color:var(--text-muted);">Button inner padding</span>
850
- </div>
851
- <div class="spacing-row">
852
- <div class="spacing-label">8px</div>
853
- <div class="spacing-box" style="width: 32px;"></div>
854
- <span style="font-size:11px; color:var(--text-muted);">Base unit, nav item gap</span>
855
- </div>
856
- <div class="spacing-row">
857
- <div class="spacing-label">16px</div>
858
- <div class="spacing-box" style="width: 64px;"></div>
859
- <span style="font-size:11px; color:var(--text-muted);">Nav item horizontal padding, card gap</span>
860
- </div>
861
- <div class="spacing-row">
862
- <div class="spacing-label">24px</div>
863
- <div class="spacing-box" style="width: 96px;"></div>
864
- <span style="font-size:11px; color:var(--text-muted);">Button horizontal padding, category card inner padding</span>
865
- </div>
866
- <div class="spacing-row">
867
- <div class="spacing-label">40px</div>
868
- <div class="spacing-box" style="width: 160px;"></div>
869
- <span style="font-size:11px; color:var(--text-muted);">Section horizontal padding, nav horizontal padding</span>
870
- </div>
871
- <div class="spacing-row">
872
- <div class="spacing-label">80px</div>
873
- <div class="spacing-box" style="width: 320px;"></div>
874
- <span style="font-size:11px; color:var(--text-muted);">Section vertical padding</span>
875
- </div>
876
- <div class="spacing-row">
877
- <div class="spacing-label">100vh</div>
878
- <div class="spacing-box" style="width: 480px;"></div>
879
- <span style="font-size:11px; color:var(--text-muted);">Hero section height — one message per screen</span>
880
- </div>
881
- </section>
882
-
883
- <hr class="section-divider">
884
-
885
- <!-- 7. BORDER RADIUS -->
886
- <section class="section">
887
- <h2 class="section-title">Border Radius Scale</h2>
888
- <p class="section-desc">Sharp and precise. Only 4px for buttons and 12px for category cards.</p>
889
-
890
- <div class="radius-row">
891
- <div class="radius-item">
892
- <div class="radius-box" style="border-radius: 0px;"></div>
893
- <div class="radius-value">0px</div>
894
- <div class="radius-context">Default (most elements)</div>
895
- </div>
896
- <div class="radius-item">
897
- <div class="radius-box" style="border-radius: 4px;"></div>
898
- <div class="radius-value">4px</div>
899
- <div class="radius-context">Buttons, inputs</div>
900
- </div>
901
- <div class="radius-item">
902
- <div class="radius-box" style="border-radius: 12px;"></div>
903
- <div class="radius-value">12px</div>
904
- <div class="radius-context">Category cards</div>
905
- </div>
906
- <div class="radius-item">
907
- <div class="radius-box" style="border-radius: 50%;"></div>
908
- <div class="radius-value">50%</div>
909
- <div class="radius-context">Carousel dots</div>
910
- </div>
911
- </div>
912
- </section>
913
-
914
- <hr class="section-divider">
915
-
916
- <!-- 8. ELEVATION -->
917
- <section class="section" style="background: var(--surface-dark); margin: 0 auto; max-width: 100%; padding: 80px 40px;">
918
- <div style="max-width: 1200px; margin: 0 auto;">
919
- <h2 class="section-title">Elevation & Depth</h2>
920
- <p class="section-desc">Tesla avoids shadows entirely. Depth comes from opacity-based layering and photography-as-depth.</p>
921
-
922
- <div class="elevation-row">
923
- <div class="elevation-card" style="border: 1px solid var(--border-dark);">
924
- <div class="elevation-name">Level 0 — Flat</div>
925
- <div class="elevation-desc">No shadow, no border. Default for all elements.</div>
926
- </div>
927
- <div class="elevation-card" style="background: rgba(255,255,255,0.08); border: 1px solid var(--border-dark); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);">
928
- <div class="elevation-name">Level 1 — Frost</div>
929
- <div class="elevation-desc">Frosted glass. Navigation on scroll.</div>
930
- </div>
931
- <div class="elevation-card" style="background: rgba(128,128,128,0.45);">
932
- <div class="elevation-name">Level 2 — Overlay</div>
933
- <div class="elevation-desc">Modal overlays, popups.</div>
934
- </div>
935
- <div class="elevation-card" style="box-shadow: 0 2px 8px rgba(0,0,0,0.3); border: 1px solid var(--border-dark);">
936
- <div class="elevation-name">Level 3 — Subtle</div>
937
- <div class="elevation-desc">Minimal shadow hints on rare hover states.</div>
938
- </div>
939
- </div>
940
- </div>
941
- </section>
942
-
943
- <!-- FOOTER -->
944
- <footer class="footer">Maintained by <a href="https://github.com/VoltAgent/voltagent" target="_blank" rel="noopener noreferrer" style="text-decoration:none;"><img src="https://github.com/VoltAgent.png?size=32" alt="VoltAgent" width="14" height="14" style="border-radius:3px;vertical-align:-2px;margin-right:3px;">VoltAgent</a> team</footer>
945
-
946
- </body>
947
- </html>