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.
- package/README.ja.md +7 -7
- package/README.ko.md +7 -7
- package/README.md +15 -18
- package/README.zh-TW.md +7 -7
- package/agents/omd-ux-writer.md +1 -1
- package/data/architecture-proposals/2026-05-13-thin-install-fresh-fetch.md +189 -0
- package/data/reference-audits/2026-05-13-kr10.md +132 -0
- package/data/reference-fingerprints.json +626 -3
- package/data/reference-tags.md +15 -1
- package/package.json +2 -2
- package/skills/omd-apply/SKILL.md +1 -1
- package/skills/omd-harness/SKILL.md +3 -3
- package/skills/omd-init/SKILL.md +2 -2
- package/web/AGENTS.md +5 -0
- package/web/references/29cm/DESIGN.md +445 -0
- package/web/references/ably/DESIGN.md +582 -0
- package/{references → web/references}/airbnb/DESIGN.md +158 -19
- package/web/references/airtable/DESIGN.md +241 -0
- package/{references → web/references}/apple/DESIGN.md +131 -76
- package/web/references/baemin/DESIGN.md +470 -0
- package/web/references/banksalad/DESIGN.md +606 -0
- package/{references → web/references}/bmw/DESIGN.md +138 -9
- package/{references → web/references}/cal/DESIGN.md +173 -17
- package/{references → web/references}/claude/DESIGN.md +11 -1
- package/{references → web/references}/clay/DESIGN.md +75 -0
- package/{references → web/references}/clickhouse/DESIGN.md +74 -0
- package/{references → web/references}/cohere/DESIGN.md +75 -0
- package/web/references/coinbase/DESIGN.md +205 -0
- package/{references → web/references}/composio/DESIGN.md +74 -0
- package/web/references/coupang/DESIGN.md +487 -0
- package/{references → web/references}/cursor/DESIGN.md +74 -0
- package/web/references/dcard/DESIGN.md +567 -0
- package/{references → web/references}/elevenlabs/DESIGN.md +91 -0
- package/{references → web/references}/expo/DESIGN.md +72 -0
- package/{references → web/references}/ferrari/DESIGN.md +72 -0
- package/{references → web/references}/figma/DESIGN.md +124 -48
- package/{references → web/references}/framer/DESIGN.md +143 -16
- package/web/references/freee/DESIGN.md +558 -0
- package/web/references/gangnamunni/DESIGN.md +605 -0
- package/{references → web/references}/hashicorp/DESIGN.md +72 -0
- package/{references → web/references}/ibm/DESIGN.md +68 -0
- package/{references → web/references}/intercom/DESIGN.md +73 -0
- package/web/references/kakao/DESIGN.md +490 -0
- package/web/references/kakaobank/DESIGN.md +533 -0
- package/web/references/kakaopay/DESIGN.md +529 -0
- package/web/references/karrot/DESIGN.md +431 -0
- package/web/references/kraken/DESIGN.md +219 -0
- package/web/references/krds/DESIGN.md +982 -0
- package/web/references/kurly/DESIGN.md +574 -0
- package/{references → web/references}/lamborghini/DESIGN.md +74 -0
- package/{references → web/references}/line/DESIGN.md +84 -43
- package/{references → web/references}/linear.app/DESIGN.md +8 -1
- package/{references → web/references}/lovable/DESIGN.md +73 -0
- package/web/references/mercari/DESIGN.md +464 -0
- package/{references → web/references}/minimax/DESIGN.md +72 -0
- package/{references → web/references}/mintlify/DESIGN.md +72 -0
- package/web/references/miro/DESIGN.md +252 -0
- package/{references → web/references}/mistral.ai/DESIGN.md +72 -0
- package/{references → web/references}/mongodb/DESIGN.md +72 -0
- package/web/references/musinsa/DESIGN.md +536 -0
- package/web/references/naver/DESIGN.md +518 -0
- package/{references → web/references}/notion/DESIGN.md +9 -1
- package/web/references/nvidia/DESIGN.md +491 -0
- package/web/references/ohouse/DESIGN.md +570 -0
- package/{references → web/references}/ollama/DESIGN.md +72 -0
- package/{references → web/references}/opencode.ai/DESIGN.md +73 -0
- package/web/references/pinkoi/DESIGN.md +575 -0
- package/{references → web/references}/pinterest/DESIGN.md +73 -0
- package/{references → web/references}/posthog/DESIGN.md +172 -18
- package/web/references/qanda/DESIGN.md +459 -0
- package/{references → web/references}/raycast/DESIGN.md +169 -34
- package/web/references/remember/DESIGN.md +445 -0
- package/{references → web/references}/renault/DESIGN.md +72 -0
- package/{references → web/references}/replicate/DESIGN.md +73 -0
- package/{references → web/references}/resend/DESIGN.md +73 -0
- package/{references → web/references}/revolut/DESIGN.md +74 -0
- package/web/references/ridi/DESIGN.md +517 -0
- package/{references → web/references}/runwayml/DESIGN.md +152 -24
- package/{references → web/references}/sanity/DESIGN.md +72 -0
- package/{references → web/references}/sentry/DESIGN.md +73 -0
- package/web/references/socar/DESIGN.md +370 -0
- package/web/references/spacex/DESIGN.md +379 -0
- package/web/references/spotify/DESIGN.md +426 -0
- package/{references → web/references}/stripe/DESIGN.md +44 -1
- package/{references → web/references}/supabase/DESIGN.md +73 -0
- package/{references → web/references}/superhuman/DESIGN.md +159 -17
- package/{references → web/references}/tesla/DESIGN.md +170 -0
- package/{references → web/references}/together.ai/DESIGN.md +73 -0
- package/{references → web/references}/toss/DESIGN.md +304 -50
- package/{references → web/references}/uber/DESIGN.md +73 -0
- package/{references → web/references}/vercel/DESIGN.md +9 -1
- package/{references → web/references}/voltagent/DESIGN.md +73 -0
- package/web/references/wanted/DESIGN.md +515 -0
- package/{references → web/references}/warp/DESIGN.md +142 -15
- package/web/references/webflow/DESIGN.md +253 -0
- package/{references → web/references}/wise/DESIGN.md +84 -0
- package/{references → web/references}/x.ai/DESIGN.md +85 -0
- package/web/references/yanolja/DESIGN.md +448 -0
- package/web/references/yeogiotte/DESIGN.md +424 -0
- package/{references → web/references}/zapier/DESIGN.md +85 -0
- package/web/references/zigbang/DESIGN.md +457 -0
- package/web/references/zigzag/DESIGN.md +618 -0
- package/references/airtable/DESIGN.md +0 -107
- package/references/baemin/DESIGN.md +0 -260
- package/references/coinbase/DESIGN.md +0 -129
- package/references/dcard/DESIGN.md +0 -302
- package/references/freee/DESIGN.md +0 -308
- package/references/kakao/DESIGN.md +0 -261
- package/references/karrot/DESIGN.md +0 -252
- package/references/kraken/DESIGN.md +0 -146
- package/references/mercari/DESIGN.md +0 -294
- package/references/miro/DESIGN.md +0 -108
- package/references/nvidia/DESIGN.md +0 -308
- package/references/pinkoi/DESIGN.md +0 -309
- package/references/spacex/DESIGN.md +0 -205
- package/references/spotify/DESIGN.md +0 -246
- package/references/webflow/DESIGN.md +0 -109
|
@@ -228,3 +228,76 @@ What distinguishes Pinterest is its generous border-radius system (12px–40px,
|
|
|
228
228
|
4. Pin Sans is the only font — compact at 12px for UI, 70px for display
|
|
229
229
|
5. Photography carries the design — the UI stays warm and minimal
|
|
230
230
|
6. Plum black (#211922) for text — warmer than pure black
|
|
231
|
+
|
|
232
|
+
## 10. Voice & Tone
|
|
233
|
+
|
|
234
|
+
Pinterest's voice is **inspirational-warm and visual-first.** Marketing copy avoids tech jargon — speaks to creative life moments (weddings, recipes, home decor, fashion). UI chrome stays minimal because the photography carries the brand. Plum black `#211922` for text — slightly warmer than pure black, matching the warm-photography aesthetic.
|
|
235
|
+
|
|
236
|
+
| Context | Tone |
|
|
237
|
+
|---|---|
|
|
238
|
+
| CTA | Inspirational verb. "Get started", "Save", "Pin it" |
|
|
239
|
+
| Marketing | Lifestyle moments. "Get inspired" recurring |
|
|
240
|
+
| Documentation | Sparse — Pinterest is consumer-product, devs use API docs |
|
|
241
|
+
| Error | Quiet. "Couldn't load — try again" |
|
|
242
|
+
|
|
243
|
+
**Voice samples**
|
|
244
|
+
- Marketing pattern: *"Get inspired"* / *"Find ideas you'll love"* <!-- illustrative: tagline patterns -->
|
|
245
|
+
|
|
246
|
+
**Forbidden phrases.** "Revolutionary discovery". Aggressive ad-platform framing in consumer surfaces.
|
|
247
|
+
|
|
248
|
+
## 11. Brand Narrative
|
|
249
|
+
|
|
250
|
+
Pinterest was founded **2010** in Palo Alto by **Ben Silbermann (CEO, born July 14 1982 in Des Moines, Iowa)**, **Paul Sciarra**, and **Evan Sharp** ([Pinterest — Wikipedia](https://en.wikipedia.org/wiki/Pinterest), [Evan Sharp — Wikipedia](https://en.wikipedia.org/wiki/Evan_Sharp)). Pinterest emerged from an earlier Silbermann + Sciarra app called **Tote** (a virtual paper-catalog replacement); Silbermann pivoted into a visual board-collection product. **Development began December 2009**; **closed-beta prototype launched March 2010**. **Paul Sciarra left April 2012**. Visual discovery platform — users save ("pin") images to themed boards. **NYSE IPO April 18 2019** under ticker **PINS**. **June 2022 leadership transition**: Silbermann became **Executive Chairman** and **Bill Ready** (former President of Commerce + Payments at **Google**, ex-COO at **PayPal**) became CEO. The brand has stayed remarkably consistent across the leadership change: warm cream canvas, plum-black text, image-grid as primary chrome, red-pill CTA.
|
|
251
|
+
|
|
252
|
+
## 12. Principles
|
|
253
|
+
|
|
254
|
+
1. **Photography is the design.** *UI implication:* chrome stays minimal so pins read.
|
|
255
|
+
2. **Plum black `#211922` over pure black.** *UI implication:* warmer text inherits warmth from photography.
|
|
256
|
+
3. **Red `#e60023` pill is THE CTA.** *UI implication:* primary actions always red pill.
|
|
257
|
+
4. **Masonry grid is the layout.** *UI implication:* preserve variable-height tile grid.
|
|
258
|
+
5. **No corporate polish.** *UI implication:* keep the warm-handmade-collection aesthetic.
|
|
259
|
+
|
|
260
|
+
## 13. Personas
|
|
261
|
+
|
|
262
|
+
*Personas are fictional archetypes informed by Pinterest user segments (creative planners, home/recipe enthusiasts, ecommerce sellers), not individual people.*
|
|
263
|
+
|
|
264
|
+
**Sofia Park, 31, Seoul.** Wedding planner. Boards organized by season + venue. Treats Pinterest as professional moodboard.
|
|
265
|
+
|
|
266
|
+
**Marcus Chen, 38, San Francisco.** Home renovation enthusiast. Multi-board project planning.
|
|
267
|
+
|
|
268
|
+
**Yuki Tanaka, 27, Tokyo.** Indie ecommerce seller using Pinterest Ads for product discovery.
|
|
269
|
+
|
|
270
|
+
## 14. States
|
|
271
|
+
|
|
272
|
+
| State | Treatment |
|
|
273
|
+
|---|---|
|
|
274
|
+
| **Empty (no pins)** | "Save pins to see them here" + recommended pin grid |
|
|
275
|
+
| **Empty (search)** | "No results for `<query>`. Try different keywords." |
|
|
276
|
+
| **Loading (feed)** | Masonry skeleton with cream-warm rectangles |
|
|
277
|
+
| **Loading (image)** | Dominant-color placeholder before image loads |
|
|
278
|
+
| **Error (image)** | Plum-black "Couldn't load" with retry icon |
|
|
279
|
+
| **Error (board)** | Inline "Refresh" link |
|
|
280
|
+
| **Success (saved)** | Red `#e60023` heart fills + toast "Saved to <board>" |
|
|
281
|
+
| **Success (followed)** | Subtle confirmation, no celebration |
|
|
282
|
+
| **Skeleton (board)** | Image-aspect-ratio placeholders |
|
|
283
|
+
| **Disabled (private)** | "This board is private" message |
|
|
284
|
+
| **Loading (image upload)** | Per-image progress bar |
|
|
285
|
+
|
|
286
|
+
## 15. Motion & Easing
|
|
287
|
+
|
|
288
|
+
| Token | Value | Use |
|
|
289
|
+
|---|---|---|
|
|
290
|
+
| `motion-instant` | 0ms | Pin save |
|
|
291
|
+
| `motion-fast` | 200ms | Hover scale on tiles |
|
|
292
|
+
| `motion-standard` | 300ms | Modal expand |
|
|
293
|
+
| `motion-spring` | variable | Pin save heart fill |
|
|
294
|
+
|
|
295
|
+
**Pin save** has signature spring scale + heart fill. `prefers-reduced-motion: reduce` removes spring (instant fill).
|
|
296
|
+
|
|
297
|
+
---
|
|
298
|
+
|
|
299
|
+
**Verified:** 2026-05-08 (omd:migrate run 45 — Apple-tier)
|
|
300
|
+
**Tier 1 sources:** kr.pinterest.com home + business.pinterest.com/ko (live DOM via playwright — **Two-system dual-canvas split**: consumer Pinterest Red `#e60023` 16px Login + Cream `#e5e5e0` Secondary + Plum-Black `#211922` ghost nav (12px·400 / 48px); business Charcoal `#111111` dual-radius (20px compact 36px / 30px hero 60px) / 16px·400 — separate B2B track).
|
|
301
|
+
**Tier 2 sources:** styles.refero.design / getdesign.md — no record.
|
|
302
|
+
**Tier 2 (Philosophy/founders/IPO):** Wikipedia (Pinterest + Evan Sharp), Founders Era, Inc 30 Under 30, EBSCO, Buildd, Companies History.
|
|
303
|
+
**Style ref:** `notion`. **Conflicts unresolved:** none. **Earlier addition:** Pinterest Red `#e60023` + Cream `#e5e5e0` + Pinterest Business Charcoal dual-radius system missed by prior pass (which had only ghost nav + Plum text).
|
|
@@ -93,24 +93,105 @@ The interaction design carries the same spirit: hover states flash PostHog Orang
|
|
|
93
93
|
## 4. Component Stylings
|
|
94
94
|
|
|
95
95
|
### Buttons
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
-
|
|
99
|
-
-
|
|
100
|
-
-
|
|
101
|
-
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
-
|
|
105
|
-
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
-
|
|
111
|
-
-
|
|
112
|
-
-
|
|
113
|
-
-
|
|
96
|
+
|
|
97
|
+
**Dark Primary**
|
|
98
|
+
- Background: `#1e1f23`
|
|
99
|
+
- Text: `#ffffff`
|
|
100
|
+
- Radius: 6px
|
|
101
|
+
- Padding: 10px 12px
|
|
102
|
+
- Font: 15px / 600 / IBM Plex Sans
|
|
103
|
+
- Hover: opacity 0.7, text shifts to Amber Gold `#F7A501`
|
|
104
|
+
- Active: opacity 0.8, slight scale transform
|
|
105
|
+
- Use: Main CTA — dark and confident
|
|
106
|
+
|
|
107
|
+
**Sage Light**
|
|
108
|
+
- Background: `#e5e7e0`
|
|
109
|
+
- Text: `#4d4f46` (Olive Ink)
|
|
110
|
+
- Radius: 4px
|
|
111
|
+
- Padding: 4px
|
|
112
|
+
- Font: 14px / 500 / IBM Plex Sans
|
|
113
|
+
- Hover: bg `#f4f4f4`, text shifts to PostHog Orange `#F54E00`
|
|
114
|
+
- Use: Compact utility button
|
|
115
|
+
|
|
116
|
+
**Warm Tan Featured**
|
|
117
|
+
- Background: `#d4c9b8`
|
|
118
|
+
- Text: `#000000`
|
|
119
|
+
- Radius: 0px
|
|
120
|
+
- Padding: 10px 12px
|
|
121
|
+
- Hover: text flash to PostHog Orange `#F54E00`
|
|
122
|
+
- Use: Featured/premium actions
|
|
123
|
+
|
|
124
|
+
**Near-white Ghost**
|
|
125
|
+
- Background: `#fdfdf8`
|
|
126
|
+
- Text: `#4d4f46` (Olive Ink)
|
|
127
|
+
- Border: 1px solid transparent
|
|
128
|
+
- Radius: 4px
|
|
129
|
+
- Padding: 8px 12px
|
|
130
|
+
- Hover: text flash to PostHog Orange `#F54E00`
|
|
131
|
+
- Use: Minimal-presence ghost button
|
|
132
|
+
|
|
133
|
+
### Inputs
|
|
134
|
+
|
|
135
|
+
**Default**
|
|
136
|
+
- Background: `#eeefe9`
|
|
137
|
+
- Text: `#374151`
|
|
138
|
+
- Border: 1px solid `#b6b7af`
|
|
139
|
+
- Radius: 4px
|
|
140
|
+
- Padding: 2px 0px 2px 8px
|
|
141
|
+
- Placeholder: `#9ea096` (Sage Placeholder)
|
|
142
|
+
- Focus: `#3b82f6` ring at 50% opacity (Tailwind blue focus ring)
|
|
143
|
+
- Use: Standard form input — multiple border patterns; some inputs use compound borders (top/left/bottom-only)
|
|
144
|
+
|
|
145
|
+
**Search / Filter**
|
|
146
|
+
- Background: `#eeefe9`
|
|
147
|
+
- Text: `#374151`
|
|
148
|
+
- Border: 1px solid `#b6b7af`
|
|
149
|
+
- Radius: 4px
|
|
150
|
+
- Padding: 6px 8px
|
|
151
|
+
- Placeholder: `#9ea096`
|
|
152
|
+
- Use: Search/filter control
|
|
153
|
+
|
|
154
|
+
### Cards
|
|
155
|
+
|
|
156
|
+
**Bordered Card**
|
|
157
|
+
- Background: `#fdfdf8` (Warm Parchment) or `#ffffff`
|
|
158
|
+
- Border: 1px solid `#bfc1b7`
|
|
159
|
+
- Radius: 6px
|
|
160
|
+
- Padding: 16px
|
|
161
|
+
- Use: Clean and minimal default card
|
|
162
|
+
|
|
163
|
+
**Sage Surface Card**
|
|
164
|
+
- Background: `#eeefe9`
|
|
165
|
+
- Border: 1px solid `#bfc1b7`
|
|
166
|
+
- Radius: 4px
|
|
167
|
+
- Padding: 16px
|
|
168
|
+
- Use: Secondary content container
|
|
169
|
+
|
|
170
|
+
**Shadow Card**
|
|
171
|
+
- Background: `#fdfdf8`
|
|
172
|
+
- Radius: 6px
|
|
173
|
+
- Padding: 16px
|
|
174
|
+
- Shadow: `0px 25px 50px -12px rgba(0, 0, 0, 0.25)`
|
|
175
|
+
- Hover: Orange text flash on interactive cards
|
|
176
|
+
- Use: Elevated content (modals, dropdowns)
|
|
177
|
+
|
|
178
|
+
### Badges
|
|
179
|
+
|
|
180
|
+
**Default**
|
|
181
|
+
- Background: `#e5e7e0`
|
|
182
|
+
- Text: `#4d4f46`
|
|
183
|
+
- Radius: 4px
|
|
184
|
+
- Padding: 2px 8px
|
|
185
|
+
- Font: 12px / 500 / IBM Plex Sans
|
|
186
|
+
- Use: Inferred from §1-§2 baseline (no explicit DS variant in source).
|
|
187
|
+
|
|
188
|
+
**Featured**
|
|
189
|
+
- Background: `#d4c9b8`
|
|
190
|
+
- Text: `#000000`
|
|
191
|
+
- Radius: 4px
|
|
192
|
+
- Padding: 2px 8px
|
|
193
|
+
- Font: 12px / 600 / IBM Plex Sans
|
|
194
|
+
- Use: Inferred from §1-§2 baseline (no explicit DS variant in source) — warm tan featured tag.
|
|
114
195
|
|
|
115
196
|
### Navigation
|
|
116
197
|
- **Top nav**: Warm background, IBM Plex Sans at 15px weight 600
|
|
@@ -254,3 +335,76 @@ When refining existing screens generated with this design system:
|
|
|
254
335
|
3. Ensure hover states flash PostHog Orange (#F54E00) — if hovering feels bland, you're missing this
|
|
255
336
|
4. Confirm borders use sage-tinted gray (#bfc1b7) not neutral gray — warmth runs through every element
|
|
256
337
|
5. The overall tone should feel like a fun, scrappy startup wiki — never corporate-polished or sterile
|
|
338
|
+
|
|
339
|
+
## 10. Voice & Tone
|
|
340
|
+
|
|
341
|
+
PostHog's voice is **scrappy-startup-wiki and engineer-honest.** "We make dev tools for product engineers" — terse, capability-driven, slightly irreverent. Sage-tinted gray (`#bfc1b7`) borders + warm canvas signal "small but serious team that ships." Famous for company handbook being entirely public (posthog.com/handbook).
|
|
342
|
+
|
|
343
|
+
| Context | Tone |
|
|
344
|
+
|---|---|
|
|
345
|
+
| CTA | Verb. "Get started", "Sign up", "Talk to sales" |
|
|
346
|
+
| Marketing | Capability-list with personality. "Product OS" framing |
|
|
347
|
+
| Documentation | Wiki-style, deeply linked, occasional jokes |
|
|
348
|
+
| Handbook | Radically transparent — even sensitive topics |
|
|
349
|
+
|
|
350
|
+
**Voice samples**
|
|
351
|
+
- Marketing tagline: *"We make dev tools for product engineers"* <!-- verified: posthog.com homepage 2026-05 -->
|
|
352
|
+
|
|
353
|
+
**Forbidden phrases.** "Revolutionary product analytics". Aggressive Amplitude-comparison framing.
|
|
354
|
+
|
|
355
|
+
## 11. Brand Narrative
|
|
356
|
+
|
|
357
|
+
PostHog was founded **2020** by **James Hawkins (Co-CEO)** and **Tim Glaser (CTO/Co-CEO)** as an open-source alternative to Amplitude/Mixpanel ([PostHog — About](https://posthog.com/about), [Y Combinator — PostHog](https://www.ycombinator.com/companies/posthog)). The company **hatched in Y Combinator's W20 batch** and **launched on Hacker News with their MVP just 4 weeks after writing first code**. **Hawkins**: previously **VP Sales & Channels at Arachnys**; founded **c2o Media** before PostHog. **Glaser**: leads technical strategy, built PostHog on **ClickHouse + open-source frameworks**. Famous for **radical transparency** — **public handbook, public salaries, public roadmap, public board materials**. **From-pivot-hell-to-$1.4B-unicorn** YC library case study documents the journey ([YC Library — Pivot Hell to $1.4B Unicorn](https://www.ycombinator.com/library/NA-from-pivot-hell-to-1-4-billion-unicorn)). **Total funding ~$182M** from **Stripe, GV, Y Combinator** + angels including **Jason Warner (CTO GitHub)** and **Solomon Hykes (Founder Docker)** ([PostHog — Reflecting on YC 2 years on](https://posthog.com/blog/yc-2-years-on), [Tracxn — PostHog](https://tracxn.com/d/companies/posthog/__tWY33MozggoGzQ9VYs8-O9tG9o6ZXDONwy37RdpGE_0)). **Used by 190,254+ teams** including **65% of YC batch companies**. The brand voice tracks this culture: scrappy, honest, occasionally meme-aware. The "Product OS" pivot in 2024-2025 expanded PostHog from analytics to **feature flags, session replay, surveys, A/B tests** as a single integrated product platform.
|
|
358
|
+
|
|
359
|
+
## 12. Principles
|
|
360
|
+
|
|
361
|
+
1. **Open source is the default.** *UI implication:* self-hosting first-class option, never deprioritized.
|
|
362
|
+
2. **Radical transparency.** *UI implication:* handbook + roadmap publicly linked.
|
|
363
|
+
3. **Sage-tinted warm gray.** Borders `#bfc1b7`. *UI implication:* never neutral pure gray; warmth carries.
|
|
364
|
+
4. **Hedgehog mascot.** *UI implication:* mascot appears in product (404 pages, empty states) as personality moments.
|
|
365
|
+
5. **Wiki feel over corporate polish.** *UI implication:* documentation can be playful; chrome can have texture.
|
|
366
|
+
|
|
367
|
+
## 13. Personas
|
|
368
|
+
|
|
369
|
+
*Personas are fictional archetypes informed by PostHog user segments (product engineers, indie devs, growth teams), not individual people.*
|
|
370
|
+
|
|
371
|
+
**Sarah Lin, 31, San Francisco.** Founding engineer at Series A. PostHog for analytics + feature flags + session replay in one stack.
|
|
372
|
+
|
|
373
|
+
**Henrik Sondergaard, 38, Copenhagen.** Indie SaaS founder. Self-hosts PostHog to keep customer data on his infra.
|
|
374
|
+
|
|
375
|
+
**Priya Krishnan, 27, Bengaluru.** Growth engineer at fintech. A/B tests + funnel analysis daily.
|
|
376
|
+
|
|
377
|
+
## 14. States
|
|
378
|
+
|
|
379
|
+
| State | Treatment |
|
|
380
|
+
|---|---|
|
|
381
|
+
| **Empty (no events)** | "Install PostHog SDK to start" code snippet |
|
|
382
|
+
| **Empty (no insights)** | "Create your first insight" with template gallery |
|
|
383
|
+
| **Loading (query)** | Per-step execution visible |
|
|
384
|
+
| **Loading (replay loading)** | Session video loader with frame previews |
|
|
385
|
+
| **Error (SDK not detected)** | Specific instructions + verify-installation button |
|
|
386
|
+
| **Error (rate limit)** | Plain explanation + upgrade link |
|
|
387
|
+
| **Success (event captured)** | Implicit; events appear in feed |
|
|
388
|
+
| **Success (insight saved)** | Soft confirmation, no celebration |
|
|
389
|
+
| **Skeleton (insight grid)** | Sage-tinted placeholders |
|
|
390
|
+
| **Disabled (free plan)** | Upgrade link — never block existing OSS features |
|
|
391
|
+
| **Loading (long replay)** | Persistent progress |
|
|
392
|
+
|
|
393
|
+
## 15. Motion & Easing
|
|
394
|
+
|
|
395
|
+
| Token | Value | Use |
|
|
396
|
+
|---|---|---|
|
|
397
|
+
| `motion-instant` | 0ms | Selection |
|
|
398
|
+
| `motion-fast` | 150ms | Hover |
|
|
399
|
+
| `motion-standard` | 250ms | Modal, panel |
|
|
400
|
+
| `motion-hedgehog` | occasional | Mascot waves on certain success states |
|
|
401
|
+
|
|
402
|
+
Standard cubic-bezier. Hedgehog mascot moments are personality, not chrome. `prefers-reduced-motion: reduce` makes mascot static.
|
|
403
|
+
|
|
404
|
+
---
|
|
405
|
+
|
|
406
|
+
**Verified:** 2026-05-08 (omd:migrate run 46 — Apple-tier)
|
|
407
|
+
**Tier 1 sources:** posthog.com home + /pricing (live DOM via playwright — **Primary `#cd8407` PostHog Amber-Gold** 6-8px / 32-46px / 15-16px·400 with **Sage-Black `#23251d`** text; **Light Amber `#eb9d2a`** Secondary; nav 4px / 13px·500; **Region badge** Amber-tint 4px / 14px·**700**; warm three-color (Amber/Sage/Cool Gray) canvas).
|
|
408
|
+
**Tier 2 sources:** styles.refero.design / getdesign.md — no record.
|
|
409
|
+
**Tier 2 (Philosophy/founders/funding):** PostHog About + handbook + blog (YC 2-years-on), Y Combinator (PostHog W20 + Pivot Hell to $1.4B Library), Tracxn, GV.com.
|
|
410
|
+
**Style ref:** `notion`. **Conflicts unresolved:** none. **Earlier mistake reverted (significant):** prior footer captured nav-only — canonical Primary is **`#cd8407` Amber-Gold** (the brand-defining color), missed entirely.
|