oh-my-design-cli 1.0.2 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (117) hide show
  1. package/README.ja.md +7 -7
  2. package/README.ko.md +7 -7
  3. package/README.md +15 -18
  4. package/README.zh-TW.md +7 -7
  5. package/agents/omd-ux-writer.md +1 -1
  6. package/data/architecture-proposals/2026-05-13-thin-install-fresh-fetch.md +189 -0
  7. package/data/reference-audits/2026-05-13-kr10.md +132 -0
  8. package/data/reference-fingerprints.json +626 -3
  9. package/data/reference-tags.md +15 -1
  10. package/package.json +2 -2
  11. package/skills/omd-apply/SKILL.md +1 -1
  12. package/skills/omd-harness/SKILL.md +3 -3
  13. package/skills/omd-init/SKILL.md +2 -2
  14. package/web/AGENTS.md +5 -0
  15. package/web/references/29cm/DESIGN.md +445 -0
  16. package/web/references/ably/DESIGN.md +582 -0
  17. package/{references → web/references}/airbnb/DESIGN.md +158 -19
  18. package/web/references/airtable/DESIGN.md +241 -0
  19. package/{references → web/references}/apple/DESIGN.md +131 -76
  20. package/web/references/baemin/DESIGN.md +470 -0
  21. package/web/references/banksalad/DESIGN.md +606 -0
  22. package/{references → web/references}/bmw/DESIGN.md +138 -9
  23. package/{references → web/references}/cal/DESIGN.md +173 -17
  24. package/{references → web/references}/claude/DESIGN.md +11 -1
  25. package/{references → web/references}/clay/DESIGN.md +75 -0
  26. package/{references → web/references}/clickhouse/DESIGN.md +74 -0
  27. package/{references → web/references}/cohere/DESIGN.md +75 -0
  28. package/web/references/coinbase/DESIGN.md +205 -0
  29. package/{references → web/references}/composio/DESIGN.md +74 -0
  30. package/web/references/coupang/DESIGN.md +487 -0
  31. package/{references → web/references}/cursor/DESIGN.md +74 -0
  32. package/web/references/dcard/DESIGN.md +567 -0
  33. package/{references → web/references}/elevenlabs/DESIGN.md +91 -0
  34. package/{references → web/references}/expo/DESIGN.md +72 -0
  35. package/{references → web/references}/ferrari/DESIGN.md +72 -0
  36. package/{references → web/references}/figma/DESIGN.md +124 -48
  37. package/{references → web/references}/framer/DESIGN.md +143 -16
  38. package/web/references/freee/DESIGN.md +558 -0
  39. package/web/references/gangnamunni/DESIGN.md +605 -0
  40. package/{references → web/references}/hashicorp/DESIGN.md +72 -0
  41. package/{references → web/references}/ibm/DESIGN.md +68 -0
  42. package/{references → web/references}/intercom/DESIGN.md +73 -0
  43. package/web/references/kakao/DESIGN.md +490 -0
  44. package/web/references/kakaobank/DESIGN.md +533 -0
  45. package/web/references/kakaopay/DESIGN.md +529 -0
  46. package/web/references/karrot/DESIGN.md +431 -0
  47. package/web/references/kraken/DESIGN.md +219 -0
  48. package/web/references/krds/DESIGN.md +982 -0
  49. package/web/references/kurly/DESIGN.md +574 -0
  50. package/{references → web/references}/lamborghini/DESIGN.md +74 -0
  51. package/{references → web/references}/line/DESIGN.md +84 -43
  52. package/{references → web/references}/linear.app/DESIGN.md +8 -1
  53. package/{references → web/references}/lovable/DESIGN.md +73 -0
  54. package/web/references/mercari/DESIGN.md +464 -0
  55. package/{references → web/references}/minimax/DESIGN.md +72 -0
  56. package/{references → web/references}/mintlify/DESIGN.md +72 -0
  57. package/web/references/miro/DESIGN.md +252 -0
  58. package/{references → web/references}/mistral.ai/DESIGN.md +72 -0
  59. package/{references → web/references}/mongodb/DESIGN.md +72 -0
  60. package/web/references/musinsa/DESIGN.md +536 -0
  61. package/web/references/naver/DESIGN.md +518 -0
  62. package/{references → web/references}/notion/DESIGN.md +9 -1
  63. package/web/references/nvidia/DESIGN.md +491 -0
  64. package/web/references/ohouse/DESIGN.md +570 -0
  65. package/{references → web/references}/ollama/DESIGN.md +72 -0
  66. package/{references → web/references}/opencode.ai/DESIGN.md +73 -0
  67. package/web/references/pinkoi/DESIGN.md +575 -0
  68. package/{references → web/references}/pinterest/DESIGN.md +73 -0
  69. package/{references → web/references}/posthog/DESIGN.md +172 -18
  70. package/web/references/qanda/DESIGN.md +459 -0
  71. package/{references → web/references}/raycast/DESIGN.md +169 -34
  72. package/web/references/remember/DESIGN.md +445 -0
  73. package/{references → web/references}/renault/DESIGN.md +72 -0
  74. package/{references → web/references}/replicate/DESIGN.md +73 -0
  75. package/{references → web/references}/resend/DESIGN.md +73 -0
  76. package/{references → web/references}/revolut/DESIGN.md +74 -0
  77. package/web/references/ridi/DESIGN.md +517 -0
  78. package/{references → web/references}/runwayml/DESIGN.md +152 -24
  79. package/{references → web/references}/sanity/DESIGN.md +72 -0
  80. package/{references → web/references}/sentry/DESIGN.md +73 -0
  81. package/web/references/socar/DESIGN.md +370 -0
  82. package/web/references/spacex/DESIGN.md +379 -0
  83. package/web/references/spotify/DESIGN.md +426 -0
  84. package/{references → web/references}/stripe/DESIGN.md +44 -1
  85. package/{references → web/references}/supabase/DESIGN.md +73 -0
  86. package/{references → web/references}/superhuman/DESIGN.md +159 -17
  87. package/{references → web/references}/tesla/DESIGN.md +170 -0
  88. package/{references → web/references}/together.ai/DESIGN.md +73 -0
  89. package/{references → web/references}/toss/DESIGN.md +304 -50
  90. package/{references → web/references}/uber/DESIGN.md +73 -0
  91. package/{references → web/references}/vercel/DESIGN.md +9 -1
  92. package/{references → web/references}/voltagent/DESIGN.md +73 -0
  93. package/web/references/wanted/DESIGN.md +515 -0
  94. package/{references → web/references}/warp/DESIGN.md +142 -15
  95. package/web/references/webflow/DESIGN.md +253 -0
  96. package/{references → web/references}/wise/DESIGN.md +84 -0
  97. package/{references → web/references}/x.ai/DESIGN.md +85 -0
  98. package/web/references/yanolja/DESIGN.md +448 -0
  99. package/web/references/yeogiotte/DESIGN.md +424 -0
  100. package/{references → web/references}/zapier/DESIGN.md +85 -0
  101. package/web/references/zigbang/DESIGN.md +457 -0
  102. package/web/references/zigzag/DESIGN.md +618 -0
  103. package/references/airtable/DESIGN.md +0 -107
  104. package/references/baemin/DESIGN.md +0 -260
  105. package/references/coinbase/DESIGN.md +0 -129
  106. package/references/dcard/DESIGN.md +0 -302
  107. package/references/freee/DESIGN.md +0 -308
  108. package/references/kakao/DESIGN.md +0 -261
  109. package/references/karrot/DESIGN.md +0 -252
  110. package/references/kraken/DESIGN.md +0 -146
  111. package/references/mercari/DESIGN.md +0 -294
  112. package/references/miro/DESIGN.md +0 -108
  113. package/references/nvidia/DESIGN.md +0 -308
  114. package/references/pinkoi/DESIGN.md +0 -309
  115. package/references/spacex/DESIGN.md +0 -205
  116. package/references/spotify/DESIGN.md +0 -246
  117. package/references/webflow/DESIGN.md +0 -109
@@ -97,44 +97,107 @@ Inter is used everywhere — headings, body, buttons, captions — with extensiv
97
97
  ## 4. Component Stylings
98
98
 
99
99
  ### Buttons
100
- - **Primary Pill**: Transparent background, white text, pill shape (86px radius), multi-layer inset shadow (`rgba(255, 255, 255, 0.1) 0px 1px 0px 0px inset`). Hover: opacity 0.6
101
- - **Secondary Button**: Transparent background, white text, 6px radius, `1px solid rgba(255, 255, 255, 0.1)` border, subtle drop shadow (`rgba(0, 0, 0, 0.03) 0px 7px 3px`). Hover: opacity 0.6
102
- - **Ghost Button**: No background or border, gray text (`#6a6b6c`), 86px radius, same inset shadow. Hover: opacity 0.6, text brightens to white
103
- - **CTA (Download)**: Semi-transparent white background (`hsla(0, 0%, 100%, 0.815)`), dark text (`#18191a`), pill shape. Hover: full white background (`hsl(0, 0%, 100%)`)
104
- - **Transition**: All buttons use opacity transition for hover rather than background-color change — a signature Raycast interaction pattern
105
-
106
- ### Cards & Containers
107
- - **Standard Card**: `#101111` surface, `1px solid rgba(255, 255, 255, 0.06)` border, 12px–16px border-radius
108
- - **Elevated Card**: Ring shadow `rgb(27, 28, 30) 0px 0px 0px 1px` outer + `rgb(7, 8, 10) 0px 0px 0px 1px inset` inner — creates a double-ring containment
109
- - **Feature Card**: 16px–20px border-radius, subtle warm glow (`rgba(215, 201, 175, 0.05) 0px 0px 20px 5px`) behind hero elements
110
- - **Hover**: Cards brighten slightly via border opacity increase or subtle shadow enhancement
111
-
112
- ### Inputs & Forms
113
- - Dark input fields with `#07080a` background, `1px solid rgba(255, 255, 255, 0.08)` border, 8px border-radius
114
- - Focus state: Border brightens, blue glow (`hsla(202, 100%, 67%, 0.15)`) ring appears
115
- - Text: `#f9f9f9` input color, `#6a6b6c` placeholder
116
- - Labels: `#9c9c9d` at 14px weight 500
117
100
 
118
- ### Navigation
119
- - **Top nav**: Dark background blending with page, white text links at 16px weight 500
120
- - **Nav links**: Gray text (`#9c9c9d`) → white on hover, underline decoration on hover
121
- - **CTA button**: Semi-transparent white pill at nav end
122
- - **Mobile**: Collapses to hamburger, maintains dark theme
123
- - **Sticky**: Nav fixed at top with subtle border separator
124
-
125
- ### Image Treatment
126
- - **Product screenshots**: macOS window chrome style — rounded corners (12px), deep shadows simulating floating windows
127
- - **Full-bleed sections**: Dark screenshots blend seamlessly into the dark background
128
- - **Hero illustration**: Diagonal stripe pattern in Raycast Red — abstract, geometric, brand-defining
129
- - **App UI embeds**: Showing actual Raycast command palette and extensions — product as content
101
+ **Primary Pill**
102
+ - Background: transparent
103
+ - Text: `#ffffff`
104
+ - Radius: 86px (pill)
105
+ - Padding: 10px 16px
106
+ - Shadow: `rgba(255, 255, 255, 0.1) 0px 1px 0px 0px inset`
107
+ - Hover: opacity 0.6
108
+ - Use: Primary pill button on dark surfaces
109
+
110
+ **Secondary**
111
+ - Background: transparent
112
+ - Text: `#ffffff`
113
+ - Border: 1px solid `rgba(255, 255, 255, 0.1)`
114
+ - Radius: 6px
115
+ - Padding: 8px 14px
116
+ - Shadow: `rgba(0, 0, 0, 0.03) 0px 7px 3px`
117
+ - Hover: opacity 0.6
118
+ - Use: Secondary action
119
+
120
+ **Ghost**
121
+ - Background: transparent
122
+ - Text: `#6a6b6c`
123
+ - Radius: 86px
124
+ - Padding: 10px 16px
125
+ - Shadow: `rgba(255, 255, 255, 0.1) 0px 1px 0px 0px inset`
126
+ - Hover: opacity 0.6, text brightens to `#ffffff`
127
+ - Use: Tertiary action — gray text
128
+
129
+ **CTA Download**
130
+ - Background: `hsla(0, 0%, 100%, 0.815)`
131
+ - Text: `#18191a`
132
+ - Radius: 86px (pill)
133
+ - Padding: 10px 16px
134
+ - Hover: `hsl(0, 0%, 100%)` (full white)
135
+ - Use: Hero "Download" CTA on dark surfaces
136
+
137
+ ### Inputs
138
+
139
+ **Default**
140
+ - Background: `#07080a`
141
+ - Text: `#f9f9f9`
142
+ - Border: 1px solid `rgba(255, 255, 255, 0.08)`
143
+ - Radius: 8px
144
+ - Padding: 10px 12px
145
+ - Placeholder: `#6a6b6c`
146
+ - Focus: border brightens, blue glow `hsla(202, 100%, 67%, 0.15)` ring
147
+ - Label: `#9c9c9d` 14px / 500
148
+ - Use: Form input on dark theme
149
+
150
+ ### Cards
151
+
152
+ **Standard**
153
+ - Background: `#101111`
154
+ - Text: `#ffffff`
155
+ - Border: 1px solid `rgba(255, 255, 255, 0.06)`
156
+ - Radius: 12px
157
+ - Padding: 16px
158
+ - Use: Default dark card
159
+
160
+ **Elevated**
161
+ - Background: `#101111`
162
+ - Radius: 16px
163
+ - Padding: 20px
164
+ - Shadow: `rgb(27, 28, 30) 0px 0px 0px 1px, rgb(7, 8, 10) 0px 0px 0px 1px inset`
165
+ - Use: Double-ring elevated card
166
+
167
+ **Feature**
168
+ - Background: `#101111`
169
+ - Radius: 20px
170
+ - Padding: 24px
171
+ - Shadow: `rgba(215, 201, 175, 0.05) 0px 0px 20px 5px` (subtle warm glow)
172
+ - Use: Hero/feature card with warm glow
173
+
174
+ ### Badges
175
+
176
+ **Neutral**
177
+ - Background: `#1b1c1e`
178
+ - Text: `#ffffff`
179
+ - Radius: 6px
180
+ - Padding: 0px 6px
181
+ - Font: 14px / 500
182
+ - Use: Categorization badge — compact pill-like treatment
130
183
 
131
184
  ### Keyboard Shortcut Keys
132
- - **Key cap styling**: Gradient background (`#121212` → `#0d0d0d`), heavy multi-layer shadow (`rgba(0, 0, 0, 0.4) 0px 1.5px 0.5px 2.5px` + inset shadows), creating realistic physical key appearance
133
- - Border-radius: 4px–6px for individual keys
185
+ - Key cap: gradient `#121212` → `#0d0d0d`, multi-layer shadow `rgba(0, 0, 0, 0.4) 0px 1.5px 0.5px 2.5px` + inset shadows
186
+ - Radius: 4-6px
187
+ - Use: Realistic physical key cap rendering for Raycast shortcuts
134
188
 
135
- ### Badges & Tags
136
- - **Neutral badge**: `#1b1c1e` background, white text, 6px radius, 14px font at weight 500, `0px 6px` padding
137
- - Compact, pill-like treatment for categorization
189
+ ### Image Treatment
190
+ - Product screenshots: macOS window chrome style rounded corners (12px), deep shadows simulating floating windows
191
+ - Full-bleed sections: Dark screenshots blend seamlessly into the dark background
192
+ - Hero illustration: Diagonal stripe pattern in Raycast Red — abstract, geometric, brand-defining
193
+ - App UI embeds: actual Raycast command palette and extensions — product as content
194
+
195
+ ### Navigation
196
+ - Top nav: Dark background blending with page, white text links at 16px weight 500
197
+ - Nav links: Gray text (`#9c9c9d`) → white on hover, underline on hover
198
+ - CTA: Semi-transparent white pill at nav end
199
+ - Mobile: hamburger, dark theme preserved
200
+ - Sticky: Fixed at top with subtle border separator
138
201
 
139
202
  ## 5. Layout Principles
140
203
 
@@ -266,3 +329,75 @@ When refining existing screens generated with this design system:
266
329
  3. Ensure shadows have both outer and inset layers — single-layer shadows look flat and wrong
267
330
  4. Confirm Inter has OpenType features `calt`, `kern`, `liga`, `ss03` enabled
268
331
  5. Test that hover states use opacity transitions (0.6) not color swaps — this is a core interaction pattern
332
+
333
+ ## 10. Voice & Tone
334
+
335
+ Raycast's voice is **prosumer-confident and keyboard-first.** "Your shortcut to everything" — concise, capability-driven, never marketing-fluff. Dark prosumer canvas + warm gradients signal "Mac native, designed for power users."
336
+
337
+ | Context | Tone |
338
+ |---|---|
339
+ | CTA | Verb. "Download", "Sign up", "Get started" |
340
+ | Marketing | Capability-list. "Spotlight on steroids" framing |
341
+ | Documentation | Keyboard-shortcut-heavy, code-block-friendly |
342
+ | Error | Specific. "Extension failed to load. Check console for details." |
343
+
344
+ **Voice samples**
345
+ - Tagline: *"Your shortcut to everything"* <!-- verified: raycast.com homepage 2026-05 -->
346
+
347
+ **Forbidden phrases.** "Revolutionary launcher". Aggressive Spotlight-comparison framing.
348
+
349
+ ## 11. Brand Narrative
350
+
351
+ Raycast was founded **2020** out of **London** by ex-Facebook engineers **Thomas Paul Mann (CEO)** and **Petr Nikolaev (CTO)** — they **met working at Facebook on the same team**, sharing frustration with the clunky productivity tools they used and a desire to build a better Spotlight ([TechCrunch — Raycast $30M Series B 2024-09](https://techcrunch.com/2024/09/25/raycast-raises-30m-to-bring-its-mac-productivity-app-to-windows-and-ios/), [Ness Labs — Thomas Paul Mann interview](https://nesslabs.com/raycast-featured-tool)). Funding ladder: **first round March 18 2020** (seed) → **$15M Series A (November 2021)** led by **Accel + Coatue** ([TechCrunch — Raycast $15M 2021-11](https://techcrunch.com/2021/11/30/developer-productivity-tools-startup-raycast-raises-15m-from-accel-and-coatue/)) → **$30M / €27M Series B (Sept 25 2024)** to expand from Mac to Windows + iOS ([EU-Startups — Raycast €27M Series B 2024-09](https://www.eu-startups.com/2024/09/london-based-raycast-raises-e27-million-series-b-to-help-ios-and-windows-enhance-productivity/)) → **total $47.8M across 4 rounds from 20 investors** including **Accel, Y Combinator, Atomico** ([Tracxn — Raycast](https://tracxn.com/d/companies/raycast/__VNiI9rqA4HFcosfhPf0QoAIcecG3jJRlMCseC8jQeOw)). Mac-native productivity tool — Spotlight replacement that grew into a platform for extensions. Strong adoption among engineers, designers, and prosumers. Brand voice — keyboard-first, prosumer-aesthetic — reflects the product positioning.
352
+
353
+ ## 12. Principles
354
+
355
+ 1. **Keyboard is the interface.** *UI implication:* every action has a keyboard shortcut documented inline.
356
+ 2. **Inter with OpenType features.** `calt`, `kern`, `liga`, `ss03`. *UI implication:* don't substitute system fonts.
357
+ 3. **Hover via opacity, not color swap.** *UI implication:* preserve opacity-transition pattern.
358
+ 4. **Dark prosumer canvas.** *UI implication:* default to dark theme; light theme as secondary.
359
+ 5. **Extensions are first-class.** *UI implication:* Store + Extension nav has main-nav placement.
360
+
361
+ ## 13. Personas
362
+
363
+ *Personas are fictional archetypes informed by Raycast user segments (Mac power users, engineers, prosumer designers), not individual people.*
364
+
365
+ **Sergey Volkov, 36, Berlin.** Senior engineer, Raycast as Spotlight replacement + AI commands.
366
+
367
+ **Sofia Park, 31, Seoul.** Product designer with 30+ extensions installed.
368
+
369
+ **Marcus Webb, 41, San Francisco.** Engineering manager. Raycast Pro subscriber for AI features.
370
+
371
+ ## 14. States
372
+
373
+ | State | Treatment |
374
+ |---|---|
375
+ | **Empty (no extensions)** | "Browse the Store" CTA + featured grid |
376
+ | **Empty (search)** | "No commands found. Try different keywords." |
377
+ | **Loading (extension loading)** | Subtle skeleton with maintained dimensions |
378
+ | **Loading (AI command)** | Per-token streaming inline |
379
+ | **Error (extension)** | Specific error + reload extension button |
380
+ | **Error (auth)** | Specific cause + re-auth flow |
381
+ | **Success (executed)** | Implicit; result appears |
382
+ | **Success (extension installed)** | Subtle check + immediately available |
383
+ | **Skeleton (results)** | Dark-tone placeholders |
384
+ | **Disabled (no Pro)** | Upgrade link |
385
+ | **Loading (long task)** | Persistent progress |
386
+
387
+ ## 15. Motion & Easing
388
+
389
+ | Token | Value | Use |
390
+ |---|---|---|
391
+ | `motion-instant` | 0ms | Selection |
392
+ | `motion-fast` | 150ms | Hover opacity |
393
+ | `motion-standard` | 250ms | Modal, panel |
394
+
395
+ Standard cubic-bezier; minimal bounce. **Hover via opacity 0.6** is signature. `prefers-reduced-motion: reduce` removes hover transitions.
396
+
397
+ ---
398
+
399
+ **Verified:** 2026-05-08 (omd:migrate run 47 — Apple-tier)
400
+ **Tier 1 sources:** raycast.com home + /pro (live DOM via playwright — Primary **`#e6e6e6` Light Gray** + Charcoal `#2f3031` text 8px / 36px / 14px·**500**; banner-pill `#130d0e` Deep Black 1000px / 30px (top promo); newsletter inline 4px variant; dark-canvas Outline `rgba(255,255,255,0.05)` 12px on /pro).
401
+ **Tier 2 sources:** styles.refero.design / getdesign.md — no record.
402
+ **Tier 2 (Philosophy/founders/funding):** TechCrunch (2021-11 $15M Accel+Coatue + 2024-09 $30M Series B), EU-Startups (€27M Series B), TechFundingNews, Ness Labs (Mann interview), Tracxn ($47.8M total / 20 investors).
403
+ **Style ref:** `claude`. **Conflicts unresolved:** none. **Earlier mistake reverted:** prior footer captured nav-link mid-gray (`#9c9c9d`) — canonical Primary is **`#e6e6e6` Light Gray** 8px (the brand-defining download CTA, missed entirely).