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,832 +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 Figma</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=Space+Mono:wght@400;700&display=swap" rel="stylesheet">
10
- <style>
11
- :root {
12
- --color-black: #000000;
13
- --color-white: #ffffff;
14
- --glass-dark: rgba(0, 0, 0, 0.08);
15
- --glass-light: rgba(255, 255, 255, 0.16);
16
- --font-sans: system-ui, -apple-system, 'Segoe UI', 'SF Pro Display', Helvetica, Arial, sans-serif;
17
- --font-mono: 'Space Mono', 'SF Mono', Menlo, monospace;
18
- /* Light mode tokens */
19
- --bg-page: #ffffff;
20
- --bg-card: #ffffff;
21
- --bg-nav: rgba(255, 255, 255, 0.92);
22
- --text-primary: #000000;
23
- --text-secondary: #000000;
24
- --text-muted: rgba(0, 0, 0, 0.5);
25
- --border-color: rgba(0, 0, 0, 0.12);
26
- --border-subtle: rgba(0, 0, 0, 0.06);
27
- --section-label-color: #000000;
28
- --glass-surface: rgba(0, 0, 0, 0.08);
29
- }
30
-
31
- * { margin: 0; padding: 0; box-sizing: border-box; }
32
-
33
- body {
34
- background: var(--bg-page);
35
- color: var(--text-primary);
36
- font-family: var(--font-sans);
37
- font-size: 16px;
38
- font-weight: 340;
39
- line-height: 1.45;
40
- letter-spacing: -0.14px;
41
- font-feature-settings: "kern" 1;
42
- -webkit-font-smoothing: antialiased;
43
- }
44
-
45
- /* NAV */
46
- .nav {
47
- position: sticky;
48
- top: 0;
49
- z-index: 100;
50
- display: flex;
51
- align-items: center;
52
- justify-content: space-between;
53
- padding: 16px 40px;
54
- background: var(--bg-nav);
55
- backdrop-filter: blur(16px);
56
- border-bottom: 1px solid var(--border-color);
57
- }
58
- .nav-brand {
59
- font-family: var(--font-sans);
60
- font-size: 18px;
61
- font-weight: 700;
62
- letter-spacing: -0.26px;
63
- display: flex;
64
- align-items: center;
65
- gap: 10px;
66
- }
67
- .nav-brand svg { width: 24px; height: 24px; }
68
- .nav-links { display: flex; gap: 32px; align-items: center; }
69
- .nav-links a {
70
- color: var(--text-primary);
71
- text-decoration: none;
72
- font-size: 16px;
73
- font-weight: 400;
74
- letter-spacing: -0.14px;
75
- transition: opacity 0.2s;
76
- }
77
- .nav-links a:hover { opacity: 0.6; }
78
- .nav-cta {
79
- background: var(--color-black);
80
- color: var(--color-white);
81
- padding: 8px 18px 10px;
82
- border: none;
83
- border-radius: 50px;
84
- font-size: 16px;
85
- font-family: var(--font-sans);
86
- font-weight: 480;
87
- letter-spacing: -0.14px;
88
- cursor: pointer;
89
- }
90
- .nav-cta:focus { outline: 2px dashed var(--color-black); outline-offset: 3px; }
91
-
92
- /* HERO */
93
- .hero {
94
- position: relative;
95
- text-align: center;
96
- padding: 120px 40px 100px;
97
- overflow: hidden;
98
- background: linear-gradient(135deg, #0acf83 0%, #a259ff 30%, #f24e1e 50%, #ff7262 65%, #1abcfe 80%, #0acf83 100%);
99
- }
100
- .hero h1 {
101
- font-family: var(--font-sans);
102
- font-size: 86px;
103
- font-weight: 400;
104
- line-height: 1.0;
105
- letter-spacing: -1.72px;
106
- margin-bottom: 24px;
107
- color: var(--color-white);
108
- position: relative;
109
- }
110
- .hero p {
111
- color: rgba(255, 255, 255, 0.85);
112
- font-size: 20px;
113
- font-weight: 330;
114
- line-height: 1.4;
115
- letter-spacing: -0.14px;
116
- margin-bottom: 40px;
117
- position: relative;
118
- }
119
- .hero-buttons { display: flex; gap: 16px; justify-content: center; position: relative; }
120
- .btn-hero-primary {
121
- background: var(--color-white);
122
- color: var(--color-black);
123
- padding: 8px 18px 10px;
124
- border: none;
125
- border-radius: 50px;
126
- font-size: 16px;
127
- font-family: var(--font-sans);
128
- font-weight: 480;
129
- letter-spacing: -0.14px;
130
- cursor: pointer;
131
- }
132
- .btn-hero-primary:focus { outline: 2px dashed var(--color-white); outline-offset: 3px; }
133
- .btn-hero-glass {
134
- background: rgba(255, 255, 255, 0.16);
135
- color: var(--color-white);
136
- padding: 8px 18px 10px;
137
- border: none;
138
- border-radius: 50px;
139
- font-size: 16px;
140
- font-family: var(--font-sans);
141
- font-weight: 480;
142
- letter-spacing: -0.14px;
143
- cursor: pointer;
144
- backdrop-filter: blur(8px);
145
- }
146
- .btn-hero-glass:focus { outline: 2px dashed var(--color-white); outline-offset: 3px; }
147
-
148
- /* PRODUCT TABS */
149
- .product-tabs {
150
- display: flex;
151
- gap: 8px;
152
- justify-content: center;
153
- margin-bottom: 40px;
154
- position: relative;
155
- }
156
- .product-tab {
157
- background: rgba(255, 255, 255, 0.16);
158
- color: var(--color-white);
159
- padding: 8px 18px;
160
- border: none;
161
- border-radius: 50px;
162
- font-size: 16px;
163
- font-family: var(--font-sans);
164
- font-weight: 480;
165
- letter-spacing: -0.14px;
166
- cursor: pointer;
167
- backdrop-filter: blur(8px);
168
- transition: background 0.2s;
169
- }
170
- .product-tab.active {
171
- background: var(--color-white);
172
- color: var(--color-black);
173
- }
174
-
175
- /* SECTIONS */
176
- .section {
177
- max-width: 1200px;
178
- margin: 0 auto;
179
- padding: 80px 40px;
180
- }
181
- .section-title {
182
- font-family: var(--font-mono);
183
- font-size: 18px;
184
- font-weight: 400;
185
- text-transform: uppercase;
186
- letter-spacing: 0.54px;
187
- color: var(--text-muted);
188
- margin-bottom: 12px;
189
- line-height: 1.3;
190
- }
191
- .section-heading {
192
- font-family: var(--font-sans);
193
- font-size: 64px;
194
- font-weight: 400;
195
- line-height: 1.1;
196
- letter-spacing: -0.96px;
197
- margin-bottom: 48px;
198
- }
199
- .section-divider {
200
- border: none;
201
- border-top: 1px solid var(--border-subtle);
202
- margin: 0 40px;
203
- max-width: 1200px;
204
- margin-left: auto;
205
- margin-right: auto;
206
- }
207
-
208
- /* COLOR PALETTE */
209
- .color-group { margin-bottom: 40px; }
210
- .color-group-title {
211
- font-size: 26px;
212
- font-weight: 540;
213
- line-height: 1.35;
214
- letter-spacing: -0.26px;
215
- margin-bottom: 20px;
216
- }
217
- .color-grid {
218
- display: grid;
219
- grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
220
- gap: 16px;
221
- }
222
- .color-swatch {
223
- border: 1px solid var(--border-color);
224
- border-radius: 8px;
225
- overflow: hidden;
226
- }
227
- .color-swatch-block {
228
- height: 80px;
229
- position: relative;
230
- }
231
- .color-swatch-info {
232
- padding: 12px;
233
- background: var(--bg-card);
234
- }
235
- .color-swatch-name { font-size: 14px; font-weight: 700; letter-spacing: -0.14px; margin-bottom: 2px; }
236
- .color-swatch-hex { font-family: var(--font-mono); font-size: 12px; color: var(--text-muted); margin-bottom: 4px; letter-spacing: 0.6px; }
237
- .color-swatch-role { font-size: 12px; color: var(--text-muted); line-height: 1.4; font-weight: 340; }
238
-
239
- /* GRADIENT PREVIEW */
240
- .gradient-preview {
241
- border-radius: 8px;
242
- overflow: hidden;
243
- margin-bottom: 16px;
244
- }
245
- .gradient-block {
246
- height: 120px;
247
- border-radius: 8px;
248
- }
249
- .gradient-label {
250
- font-family: var(--font-mono);
251
- font-size: 12px;
252
- color: var(--text-muted);
253
- margin-top: 8px;
254
- letter-spacing: 0.6px;
255
- text-transform: uppercase;
256
- }
257
-
258
- /* TYPOGRAPHY */
259
- .type-sample { margin-bottom: 32px; padding-bottom: 32px; border-bottom: 1px solid var(--border-subtle); }
260
- .type-sample:last-child { border-bottom: none; }
261
- .type-sample-text { margin-bottom: 8px; font-feature-settings: "kern" 1; }
262
- .type-sample-label {
263
- font-family: var(--font-mono);
264
- font-size: 12px;
265
- color: var(--text-muted);
266
- letter-spacing: 0.6px;
267
- }
268
-
269
- /* WEIGHT SPECTRUM */
270
- .weight-spectrum { display: flex; flex-direction: column; gap: 12px; margin-bottom: 40px; padding: 24px; background: var(--glass-surface); border-radius: 8px; }
271
- .weight-sample { display: flex; align-items: baseline; gap: 16px; }
272
- .weight-sample-text { font-family: var(--font-sans); font-size: 24px; letter-spacing: -0.26px; line-height: 1.35; flex: 1; }
273
- .weight-sample-label { font-family: var(--font-mono); font-size: 11px; color: var(--text-muted); letter-spacing: 0.6px; text-transform: uppercase; min-width: 80px; text-align: right; }
274
-
275
- /* BUTTONS */
276
- .button-row {
277
- display: flex;
278
- flex-wrap: wrap;
279
- gap: 24px;
280
- align-items: flex-start;
281
- }
282
- .button-demo { text-align: center; }
283
- .button-demo-label {
284
- font-family: var(--font-mono);
285
- font-size: 11px;
286
- color: var(--text-muted);
287
- margin-top: 12px;
288
- text-transform: uppercase;
289
- letter-spacing: 0.6px;
290
- }
291
- .btn-black-pill {
292
- background: var(--color-black);
293
- color: var(--color-white);
294
- padding: 8px 18px 10px;
295
- border: none;
296
- border-radius: 50px;
297
- font-size: 16px;
298
- font-family: var(--font-sans);
299
- font-weight: 480;
300
- letter-spacing: -0.14px;
301
- cursor: pointer;
302
- }
303
- .btn-black-pill:focus { outline: 2px dashed var(--color-black); outline-offset: 3px; }
304
- .btn-white-pill {
305
- background: var(--color-white);
306
- color: var(--color-black);
307
- padding: 8px 18px 10px;
308
- border: 1px solid var(--border-color);
309
- border-radius: 50px;
310
- font-size: 16px;
311
- font-family: var(--font-sans);
312
- font-weight: 480;
313
- letter-spacing: -0.14px;
314
- cursor: pointer;
315
- }
316
- .btn-white-pill:focus { outline: 2px dashed var(--color-black); outline-offset: 3px; }
317
- .btn-black-circle {
318
- background: var(--color-black);
319
- color: var(--color-white);
320
- width: 48px;
321
- height: 48px;
322
- border: none;
323
- border-radius: 50%;
324
- font-size: 20px;
325
- cursor: pointer;
326
- display: inline-flex;
327
- align-items: center;
328
- justify-content: center;
329
- }
330
- .btn-black-circle:focus { outline: 2px dashed var(--color-black); outline-offset: 3px; }
331
- .btn-glass-dark {
332
- background: var(--glass-dark);
333
- color: var(--color-black);
334
- width: 48px;
335
- height: 48px;
336
- border: none;
337
- border-radius: 50%;
338
- font-size: 20px;
339
- cursor: pointer;
340
- display: inline-flex;
341
- align-items: center;
342
- justify-content: center;
343
- }
344
- .btn-glass-dark:focus { outline: 2px dashed var(--color-black); outline-offset: 3px; }
345
- .btn-glass-light-demo {
346
- background: rgba(255, 255, 255, 0.16);
347
- color: var(--color-white);
348
- width: 48px;
349
- height: 48px;
350
- border: none;
351
- border-radius: 50%;
352
- font-size: 20px;
353
- cursor: pointer;
354
- display: inline-flex;
355
- align-items: center;
356
- justify-content: center;
357
- }
358
- .glass-light-wrapper {
359
- background: var(--color-black);
360
- border-radius: 50%;
361
- padding: 0;
362
- display: inline-flex;
363
- align-items: center;
364
- justify-content: center;
365
- }
366
-
367
- /* FOCUS DEMO */
368
- .focus-demo-row {
369
- display: flex;
370
- flex-wrap: wrap;
371
- gap: 24px;
372
- align-items: center;
373
- margin-top: 40px;
374
- padding: 24px;
375
- background: var(--glass-surface);
376
- border-radius: 8px;
377
- }
378
- .focus-demo-label {
379
- font-family: var(--font-mono);
380
- font-size: 12px;
381
- color: var(--text-muted);
382
- letter-spacing: 0.6px;
383
- text-transform: uppercase;
384
- margin-bottom: 8px;
385
- }
386
- .btn-focus-visible {
387
- outline: 2px dashed var(--color-black);
388
- outline-offset: 3px;
389
- }
390
-
391
- /* CARDS */
392
- .card-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 24px; }
393
- .card {
394
- background: var(--bg-card);
395
- border-radius: 8px;
396
- padding: 28px;
397
- }
398
- .card-standard { border: 1px solid var(--border-color); }
399
- .card-elevated {
400
- border: none;
401
- box-shadow: 0 4px 24px rgba(0, 0, 0, 0.08);
402
- }
403
- .card-glass {
404
- background: var(--glass-surface);
405
- border: none;
406
- }
407
- .card h3 {
408
- font-family: var(--font-sans);
409
- font-size: 24px;
410
- font-weight: 700;
411
- line-height: 1.45;
412
- letter-spacing: normal;
413
- margin-bottom: 12px;
414
- }
415
- .card p { color: var(--text-muted); font-size: 16px; line-height: 1.45; font-weight: 330; letter-spacing: -0.14px; }
416
- .card-label {
417
- font-family: var(--font-mono);
418
- font-size: 12px;
419
- text-transform: uppercase;
420
- letter-spacing: 0.6px;
421
- color: var(--text-muted);
422
- margin-bottom: 16px;
423
- }
424
-
425
- /* SPACING */
426
- .spacing-row { display: flex; flex-wrap: wrap; gap: 12px; align-items: flex-end; }
427
- .spacing-item { text-align: center; }
428
- .spacing-box {
429
- background: rgba(0, 0, 0, 0.06);
430
- border: 1px solid rgba(0, 0, 0, 0.12);
431
- border-radius: 2px;
432
- margin-bottom: 8px;
433
- }
434
- .spacing-label {
435
- font-family: var(--font-mono);
436
- font-size: 11px;
437
- color: var(--text-muted);
438
- letter-spacing: 0.6px;
439
- }
440
-
441
- /* RADIUS */
442
- .radius-row { display: flex; flex-wrap: wrap; gap: 24px; align-items: center; }
443
- .radius-item { text-align: center; }
444
- .radius-box {
445
- width: 80px;
446
- height: 80px;
447
- background: var(--glass-surface);
448
- border: 1px solid var(--border-color);
449
- margin-bottom: 8px;
450
- }
451
- .radius-label {
452
- font-family: var(--font-mono);
453
- font-size: 11px;
454
- color: var(--text-muted);
455
- letter-spacing: 0.6px;
456
- }
457
- .radius-context {
458
- font-size: 11px;
459
- color: var(--text-muted);
460
- margin-top: 2px;
461
- font-weight: 340;
462
- }
463
-
464
- /* ELEVATION */
465
- .elevation-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 24px; }
466
- .elevation-card {
467
- background: var(--bg-card);
468
- border-radius: 8px;
469
- padding: 24px;
470
- min-height: 140px;
471
- display: flex;
472
- flex-direction: column;
473
- justify-content: space-between;
474
- }
475
- .elevation-flat { border: none; background: var(--bg-page); }
476
- .elevation-surface { background: var(--bg-card); border: 1px solid var(--border-color); }
477
- .elevation-elevated { border: none; box-shadow: 0 4px 24px rgba(0, 0, 0, 0.08); }
478
- .elevation-name { font-size: 16px; font-weight: 700; margin-bottom: 8px; letter-spacing: normal; }
479
- .elevation-desc { font-size: 13px; color: var(--text-muted); line-height: 1.5; font-weight: 340; }
480
- .elevation-level {
481
- font-family: var(--font-mono);
482
- font-size: 11px;
483
- color: var(--text-muted);
484
- text-transform: uppercase;
485
- letter-spacing: 0.6px;
486
- margin-top: 12px;
487
- }
488
-
489
- /* RESPONSIVE */
490
- @media (max-width: 768px) {
491
- .nav { padding: 12px 20px; }
492
- .nav-links a:not(.nav-cta-wrapper) { display: none; }
493
- .hero { padding: 80px 20px 60px; }
494
- .hero h1 { font-size: 48px; letter-spacing: -0.96px; }
495
- .section { padding: 60px 20px; }
496
- .section-heading { font-size: 36px; letter-spacing: -0.72px; }
497
- .color-grid { grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); }
498
- .card-grid { grid-template-columns: 1fr; }
499
- .hero-buttons { flex-direction: column; align-items: center; }
500
- .button-row { flex-direction: column; align-items: flex-start; }
501
- .product-tabs { flex-wrap: wrap; }
502
- }
503
- </style>
504
- </head>
505
- <body>
506
-
507
- <!-- NAV -->
508
- <nav class="nav">
509
- <span class="nav-brand">awesome-design-md</span>
510
- <div class="nav-links">
511
- <a href="#colors">Colors</a>
512
- <a href="#typography">Typography</a>
513
- <a href="#buttons">Buttons</a>
514
- <a href="#cards">Cards</a>
515
- <a href="#spacing">Spacing</a>
516
- <a href="#elevation">Elevation</a>
517
- <button class="nav-cta">Get started</button>
518
- </div>
519
- </nav>
520
-
521
- <!-- HERO -->
522
- <section class="hero">
523
- <div class="product-tabs">
524
- <button class="product-tab active">Design</button>
525
- <button class="product-tab">Dev Mode</button>
526
- <button class="product-tab">Prototyping</button>
527
- <button class="product-tab">Slides</button>
528
- </div>
529
- <h1>Design System<br>Inspired by Figma</h1>
530
- <p>Auto-generated design token catalog from DESIGN.md</p>
531
- <div class="hero-buttons">
532
- <button class="btn-hero-primary">Explore Tokens</button>
533
- <button class="btn-hero-glass">View Source</button>
534
- </div>
535
- </section>
536
-
537
- <hr class="section-divider">
538
-
539
- <!-- COLORS -->
540
- <section class="section" id="colors">
541
- <div class="section-title">01 / COLOR PALETTE</div>
542
- <h2 class="section-heading">Color Palette & Roles</h2>
543
-
544
- <div class="color-group">
545
- <h3 class="color-group-title">Primary</h3>
546
- <div class="color-grid">
547
- <div class="color-swatch">
548
- <div class="color-swatch-block" style="background: #000000;"></div>
549
- <div class="color-swatch-info">
550
- <div class="color-swatch-name">Pure Black</div>
551
- <div class="color-swatch-hex">#000000</div>
552
- <div class="color-swatch-role">All text, solid buttons, all borders. The sole interface color.</div>
553
- </div>
554
- </div>
555
- <div class="color-swatch">
556
- <div class="color-swatch-block" style="background: #ffffff; border: 1px solid rgba(0,0,0,0.12);"></div>
557
- <div class="color-swatch-info">
558
- <div class="color-swatch-name">Pure White</div>
559
- <div class="color-swatch-hex">#ffffff</div>
560
- <div class="color-swatch-role">All backgrounds, white buttons, text on dark surfaces.</div>
561
- </div>
562
- </div>
563
- </div>
564
- </div>
565
-
566
- <div class="color-group">
567
- <h3 class="color-group-title">Surface & Glass</h3>
568
- <div class="color-grid">
569
- <div class="color-swatch">
570
- <div class="color-swatch-block" style="background: rgba(0,0,0,0.08); border: 1px solid rgba(0,0,0,0.12);"></div>
571
- <div class="color-swatch-info">
572
- <div class="color-swatch-name">Glass Black</div>
573
- <div class="color-swatch-hex">rgba(0,0,0,0.08)</div>
574
- <div class="color-swatch-role">Secondary circular buttons, glass overlays on light surfaces.</div>
575
- </div>
576
- </div>
577
- <div class="color-swatch">
578
- <div class="color-swatch-block" style="background: rgba(255,255,255,0.16); border: 1px solid rgba(0,0,0,0.12); position: relative;">
579
- <div style="position: absolute; inset: 0; background: #000; z-index: 0;"></div>
580
- <div style="position: absolute; inset: 0; background: rgba(255,255,255,0.16); z-index: 1;"></div>
581
- </div>
582
- <div class="color-swatch-info">
583
- <div class="color-swatch-name">Glass White</div>
584
- <div class="color-swatch-hex">rgba(255,255,255,0.16)</div>
585
- <div class="color-swatch-role">Frosted glass overlay for buttons on dark or colored surfaces.</div>
586
- </div>
587
- </div>
588
- </div>
589
- </div>
590
-
591
- <div class="color-group">
592
- <h3 class="color-group-title">Gradient System</h3>
593
- <div class="gradient-preview">
594
- <div class="gradient-block" style="background: linear-gradient(135deg, #0acf83 0%, #a259ff 30%, #f24e1e 50%, #ff7262 65%, #1abcfe 80%, #0acf83 100%);"></div>
595
- </div>
596
- <div class="gradient-label">Hero Gradient -- Electric Green, Purple, Orange, Pink, Cyan</div>
597
- <p style="color: var(--text-muted); font-size: 14px; margin-top: 8px; font-weight: 340;">Color exists only in hero gradients and product showcases. The interface layer remains strictly monochrome.</p>
598
- </div>
599
- </section>
600
-
601
- <hr class="section-divider">
602
-
603
- <!-- TYPOGRAPHY -->
604
- <section class="section" id="typography">
605
- <div class="section-title">02 / TYPOGRAPHY SCALE</div>
606
- <h2 class="section-heading">Typography Rules</h2>
607
-
608
- <div class="weight-spectrum">
609
- <div style="font-family: var(--font-mono); font-size: 12px; color: var(--text-muted); letter-spacing: 0.6px; text-transform: uppercase; margin-bottom: 8px;">Variable Weight Spectrum</div>
610
- <div class="weight-sample">
611
- <span class="weight-sample-text" style="font-weight: 320;">The quick brown fox jumps</span>
612
- <span class="weight-sample-label">Weight 320</span>
613
- </div>
614
- <div class="weight-sample">
615
- <span class="weight-sample-text" style="font-weight: 330;">The quick brown fox jumps</span>
616
- <span class="weight-sample-label">Weight 330</span>
617
- </div>
618
- <div class="weight-sample">
619
- <span class="weight-sample-text" style="font-weight: 340;">The quick brown fox jumps</span>
620
- <span class="weight-sample-label">Weight 340</span>
621
- </div>
622
- <div class="weight-sample">
623
- <span class="weight-sample-text" style="font-weight: 400;">The quick brown fox jumps</span>
624
- <span class="weight-sample-label">Weight 400</span>
625
- </div>
626
- <div class="weight-sample">
627
- <span class="weight-sample-text" style="font-weight: 450;">The quick brown fox jumps</span>
628
- <span class="weight-sample-label">Weight 450</span>
629
- </div>
630
- <div class="weight-sample">
631
- <span class="weight-sample-text" style="font-weight: 480;">The quick brown fox jumps</span>
632
- <span class="weight-sample-label">Weight 480</span>
633
- </div>
634
- <div class="weight-sample">
635
- <span class="weight-sample-text" style="font-weight: 540;">The quick brown fox jumps</span>
636
- <span class="weight-sample-label">Weight 540</span>
637
- </div>
638
- <div class="weight-sample">
639
- <span class="weight-sample-text" style="font-weight: 700;">The quick brown fox jumps</span>
640
- <span class="weight-sample-label">Weight 700</span>
641
- </div>
642
- </div>
643
-
644
- <div class="type-sample">
645
- <div class="type-sample-text" style="font-family: var(--font-sans); font-size: 86px; font-weight: 400; line-height: 1.0; letter-spacing: -1.72px;">Display Hero</div>
646
- <div class="type-sample-label">Display / Hero -- 86px / wt 400 / lh 1.00 / ls -1.72px -- figmaSans</div>
647
- </div>
648
-
649
- <div class="type-sample">
650
- <div class="type-sample-text" style="font-family: var(--font-sans); font-size: 64px; font-weight: 400; line-height: 1.1; letter-spacing: -0.96px;">Section Heading</div>
651
- <div class="type-sample-label">Section Heading -- 64px / wt 400 / lh 1.10 / ls -0.96px -- figmaSans</div>
652
- </div>
653
-
654
- <div class="type-sample">
655
- <div class="type-sample-text" style="font-family: var(--font-sans); font-size: 26px; font-weight: 540; line-height: 1.35; letter-spacing: -0.26px;">Sub-heading Medium</div>
656
- <div class="type-sample-label">Sub-heading -- 26px / wt 540 / lh 1.35 / ls -0.26px -- figmaSans</div>
657
- </div>
658
-
659
- <div class="type-sample">
660
- <div class="type-sample-text" style="font-family: var(--font-sans); font-size: 26px; font-weight: 340; line-height: 1.35; letter-spacing: -0.26px;">Sub-heading Light</div>
661
- <div class="type-sample-label">Sub-heading Light -- 26px / wt 340 / lh 1.35 / ls -0.26px -- figmaSans</div>
662
- </div>
663
-
664
- <div class="type-sample">
665
- <div class="type-sample-text" style="font-family: var(--font-sans); font-size: 24px; font-weight: 700; line-height: 1.45; letter-spacing: normal;">Feature Title Bold</div>
666
- <div class="type-sample-label">Feature Title -- 24px / wt 700 / lh 1.45 / ls normal -- figmaSans</div>
667
- </div>
668
-
669
- <div class="type-sample">
670
- <div class="type-sample-text" style="font-family: var(--font-sans); font-size: 20px; font-weight: 330; line-height: 1.4; letter-spacing: -0.14px;">Body large text for descriptions and introductions. The light weight creates an airy, ethereal reading experience that matches the design-tool aesthetic.</div>
671
- <div class="type-sample-label">Body Large -- 20px / wt 330 / lh 1.40 / ls -0.14px -- figmaSans</div>
672
- </div>
673
-
674
- <div class="type-sample">
675
- <div class="type-sample-text" style="font-family: var(--font-sans); font-size: 18px; font-weight: 320; line-height: 1.45; letter-spacing: -0.26px;">Body light text at the lightest variable weight. Nearly imperceptible thinness for secondary content and delicate UI copy.</div>
676
- <div class="type-sample-label">Body Light -- 18px / wt 320 / lh 1.45 / ls -0.26px -- figmaSans</div>
677
- </div>
678
-
679
- <div class="type-sample">
680
- <div class="type-sample-text" style="font-family: var(--font-sans); font-size: 16px; font-weight: 400; line-height: 1.45; letter-spacing: -0.14px;">Standard body text for paragraphs, navigation links, and button labels. The default reading weight for all UI copy.</div>
681
- <div class="type-sample-label">Body / Button -- 16px / wt 400 / lh 1.45 / ls -0.14px -- figmaSans</div>
682
- </div>
683
-
684
- <div class="type-sample">
685
- <div class="type-sample-text" style="font-family: var(--font-mono); font-size: 18px; font-weight: 400; line-height: 1.3; letter-spacing: 0.54px; text-transform: uppercase;">MONO SECTION LABEL</div>
686
- <div class="type-sample-label">Mono Label -- 18px / wt 400 / lh 1.30 / ls 0.54px / uppercase -- figmaMono</div>
687
- </div>
688
-
689
- <div class="type-sample">
690
- <div class="type-sample-text" style="font-family: var(--font-mono); font-size: 12px; font-weight: 400; line-height: 1.0; letter-spacing: 0.6px; text-transform: uppercase;">MONO SMALL TAG</div>
691
- <div class="type-sample-label">Mono Small -- 12px / wt 400 / lh 1.00 / ls 0.6px / uppercase -- figmaMono</div>
692
- </div>
693
- </section>
694
-
695
- <hr class="section-divider">
696
-
697
- <!-- BUTTONS -->
698
- <section class="section" id="buttons">
699
- <div class="section-title">03 / BUTTON VARIANTS</div>
700
- <h2 class="section-heading">Buttons</h2>
701
-
702
- <div class="button-row">
703
- <div class="button-demo">
704
- <button class="btn-black-pill">Get started</button>
705
- <div class="button-demo-label">Black Pill CTA</div>
706
- </div>
707
- <div class="button-demo">
708
- <button class="btn-white-pill">Learn more</button>
709
- <div class="button-demo-label">White Pill</div>
710
- </div>
711
- <div class="button-demo">
712
- <button class="btn-black-circle" aria-label="Menu">&#9776;</button>
713
- <div class="button-demo-label">Black Circle</div>
714
- </div>
715
- <div class="button-demo">
716
- <button class="btn-glass-dark" aria-label="Play">&#9654;</button>
717
- <div class="button-demo-label">Glass Dark</div>
718
- </div>
719
- <div class="button-demo">
720
- <div class="glass-light-wrapper">
721
- <button class="btn-glass-light-demo" aria-label="Close">&times;</button>
722
- </div>
723
- <div class="button-demo-label">Glass Light</div>
724
- </div>
725
- </div>
726
-
727
- <div class="focus-demo-row">
728
- <div>
729
- <div class="focus-demo-label">Dashed Focus Indicator</div>
730
- <p style="font-size: 14px; color: var(--text-muted); font-weight: 340; margin-bottom: 16px;">All interactive elements use <code style="font-family: var(--font-mono); font-size: 12px; background: var(--glass-surface); padding: 2px 6px; border-radius: 4px;">dashed 2px</code> outline on focus, echoing the selection handles in the Figma editor.</p>
731
- </div>
732
- <div style="display: flex; gap: 16px; align-items: center;">
733
- <button class="btn-black-pill btn-focus-visible">Focused Pill</button>
734
- <button class="btn-black-circle btn-focus-visible" aria-label="Focused">&#10003;</button>
735
- </div>
736
- </div>
737
- </section>
738
-
739
- <hr class="section-divider">
740
-
741
- <!-- CARDS -->
742
- <section class="section" id="cards">
743
- <div class="section-title">04 / CARD EXAMPLES</div>
744
- <h2 class="section-heading">Cards & Containers</h2>
745
-
746
- <div class="card-grid">
747
- <div class="card card-standard">
748
- <div class="card-label">STANDARD CARD</div>
749
- <h3>Minimal Border</h3>
750
- <p>Standard content card with subtle border and 8px radius. The default container for features and content sections on the white gallery surface.</p>
751
- </div>
752
- <div class="card card-elevated">
753
- <div class="card-label">ELEVATED CARD</div>
754
- <h3>Subtle Shadow</h3>
755
- <p>Floating card with subtle shadow elevation. Used for product showcases and hover states where the card lifts off the surface.</p>
756
- </div>
757
- <div class="card card-glass">
758
- <div class="card-label">GLASS SURFACE</div>
759
- <h3>Glass Overlay</h3>
760
- <p>Glass-effect card using rgba(0,0,0,0.08) background. Secondary containers and grouped content areas with a translucent feel.</p>
761
- </div>
762
- </div>
763
- </section>
764
-
765
- <hr class="section-divider">
766
-
767
- <!-- SPACING -->
768
- <section class="section" id="spacing">
769
- <div class="section-title">05 / SPACING SCALE</div>
770
- <h2 class="section-heading">Spacing System</h2>
771
- <p style="color: var(--text-muted); margin-bottom: 32px; font-weight: 340; font-size: 18px; letter-spacing: -0.26px;">Base unit: 8px. Scale from 1px to 50px.</p>
772
-
773
- <div class="spacing-row">
774
- <div class="spacing-item"><div class="spacing-box" style="width: 4px; height: 4px;"></div><div class="spacing-label">1px</div></div>
775
- <div class="spacing-item"><div class="spacing-box" style="width: 8px; height: 8px;"></div><div class="spacing-label">2px</div></div>
776
- <div class="spacing-item"><div class="spacing-box" style="width: 16px; height: 16px;"></div><div class="spacing-label">4px</div></div>
777
- <div class="spacing-item"><div class="spacing-box" style="width: 32px; height: 32px;"></div><div class="spacing-label">8px</div></div>
778
- <div class="spacing-item"><div class="spacing-box" style="width: 40px; height: 40px;"></div><div class="spacing-label">10px</div></div>
779
- <div class="spacing-item"><div class="spacing-box" style="width: 48px; height: 48px;"></div><div class="spacing-label">12px</div></div>
780
- <div class="spacing-item"><div class="spacing-box" style="width: 64px; height: 64px;"></div><div class="spacing-label">16px</div></div>
781
- <div class="spacing-item"><div class="spacing-box" style="width: 72px; height: 72px;"></div><div class="spacing-label">18px</div></div>
782
- <div class="spacing-item"><div class="spacing-box" style="width: 96px; height: 96px;"></div><div class="spacing-label">24px</div></div>
783
- <div class="spacing-item"><div class="spacing-box" style="width: 128px; height: 128px;"></div><div class="spacing-label">32px</div></div>
784
- <div class="spacing-item"><div class="spacing-box" style="width: 160px; height: 160px;"></div><div class="spacing-label">40px</div></div>
785
- <div class="spacing-item"><div class="spacing-box" style="width: 192px; height: 192px;"></div><div class="spacing-label">48px</div></div>
786
- <div class="spacing-item"><div class="spacing-box" style="width: 200px; height: 200px;"></div><div class="spacing-label">50px</div></div>
787
- </div>
788
- </section>
789
-
790
- <hr class="section-divider">
791
-
792
- <!-- BORDER RADIUS -->
793
- <section class="section">
794
- <div class="section-title">06 / BORDER RADIUS SCALE</div>
795
- <h2 class="section-heading">Border Radius</h2>
796
-
797
- <div class="radius-row">
798
- <div class="radius-item"><div class="radius-box" style="border-radius: 2px;"></div><div class="radius-label">2px</div><div class="radius-context">Small links</div></div>
799
- <div class="radius-item"><div class="radius-box" style="border-radius: 6px;"></div><div class="radius-label">6px</div><div class="radius-context">Small containers</div></div>
800
- <div class="radius-item"><div class="radius-box" style="border-radius: 8px;"></div><div class="radius-label">8px</div><div class="radius-context">Cards, images</div></div>
801
- <div class="radius-item"><div class="radius-box" style="border-radius: 50px; width: 120px;"></div><div class="radius-label">50px</div><div class="radius-context">Pill buttons</div></div>
802
- <div class="radius-item"><div class="radius-box" style="border-radius: 50%;"></div><div class="radius-label">50%</div><div class="radius-context">Circle / Icon</div></div>
803
- </div>
804
- </section>
805
-
806
- <hr class="section-divider">
807
-
808
- <!-- ELEVATION -->
809
- <section class="section" id="elevation">
810
- <div class="section-title">07 / ELEVATION & DEPTH</div>
811
- <h2 class="section-heading">Depth & Elevation</h2>
812
-
813
- <div class="elevation-grid">
814
- <div class="elevation-card elevation-flat">
815
- <div><div class="elevation-name">Flat</div><div class="elevation-desc">No shadow. Page background and most text. The default surface.</div></div>
816
- <div class="elevation-level">Level 0</div>
817
- </div>
818
- <div class="elevation-card elevation-surface">
819
- <div><div class="elevation-name">Surface</div><div class="elevation-desc">White card on gradient or dark section. Primary depth through background contrast.</div></div>
820
- <div class="elevation-level">Level 1</div>
821
- </div>
822
- <div class="elevation-card elevation-elevated">
823
- <div><div class="elevation-name">Elevated</div><div class="elevation-desc">Subtle shadow for floating cards and hover states. Sparingly applied.</div></div>
824
- <div class="elevation-level">Level 2</div>
825
- </div>
826
- </div>
827
- </section>
828
-
829
- <div style="height: 80px;"></div>
830
-
831
- </body>
832
- </html>