cdragon 0.1.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 (91) hide show
  1. package/README.md +110 -0
  2. package/bin/cdragon.js +170 -0
  3. package/package.json +31 -0
  4. package/skills/agent-browser/SKILL.md +50 -0
  5. package/skills/grill-me/SKILL.md +7 -0
  6. package/skills/herdr-agent/SKILL.md +142 -0
  7. package/skills/herdr-cli/SKILL.md +388 -0
  8. package/skills/herdr-cli/scripts/herdr-agent-run-and-wait +203 -0
  9. package/skills/herdr-cli/scripts/herdr-agent-wait-complete +168 -0
  10. package/skills/notion-presentation/SKILL.md +170 -0
  11. package/skills/notion-presentation/references/example-redis-deck.md +97 -0
  12. package/skills/setup-matt-pocock-skills/SKILL.md +127 -0
  13. package/skills/setup-matt-pocock-skills/domain.md +51 -0
  14. package/skills/setup-matt-pocock-skills/issue-tracker-github.md +34 -0
  15. package/skills/setup-matt-pocock-skills/issue-tracker-gitlab.md +35 -0
  16. package/skills/setup-matt-pocock-skills/issue-tracker-local.md +19 -0
  17. package/skills/setup-matt-pocock-skills/triage-labels.md +15 -0
  18. package/skills/tdd/SKILL.md +108 -0
  19. package/skills/tdd/mocking.md +59 -0
  20. package/skills/tdd/refactoring.md +10 -0
  21. package/skills/tdd/tests.md +61 -0
  22. package/skills/to-html/SKILL.md +83 -0
  23. package/skills/to-html/designs/INDEX.md +74 -0
  24. package/skills/to-html/designs/airbnb.DESIGN.md +581 -0
  25. package/skills/to-html/designs/airtable.DESIGN.md +275 -0
  26. package/skills/to-html/designs/alipay.DESIGN.md +456 -0
  27. package/skills/to-html/designs/apple.DESIGN.md +566 -0
  28. package/skills/to-html/designs/banksalad.DESIGN.md +621 -0
  29. package/skills/to-html/designs/channeltalk.DESIGN.md +374 -0
  30. package/skills/to-html/designs/clay.DESIGN.md +398 -0
  31. package/skills/to-html/designs/clickhouse.DESIGN.md +374 -0
  32. package/skills/to-html/designs/cohere.DESIGN.md +361 -0
  33. package/skills/to-html/designs/coinone.DESIGN.md +218 -0
  34. package/skills/to-html/designs/coupang.DESIGN.md +502 -0
  35. package/skills/to-html/designs/cursor.DESIGN.md +416 -0
  36. package/skills/to-html/designs/elevenlabs.DESIGN.md +376 -0
  37. package/skills/to-html/designs/expo.DESIGN.md +373 -0
  38. package/skills/to-html/designs/figma.DESIGN.md +490 -0
  39. package/skills/to-html/designs/framer.DESIGN.md +393 -0
  40. package/skills/to-html/designs/freee.DESIGN.md +572 -0
  41. package/skills/to-html/designs/gangnamunni.DESIGN.md +621 -0
  42. package/skills/to-html/designs/gmarket.DESIGN.md +483 -0
  43. package/skills/to-html/designs/gogolook.DESIGN.md +131 -0
  44. package/skills/to-html/designs/hahow.DESIGN.md +158 -0
  45. package/skills/to-html/designs/hashicorp.DESIGN.md +369 -0
  46. package/skills/to-html/designs/hyundaicard.DESIGN.md +177 -0
  47. package/skills/to-html/designs/ibm.DESIGN.md +420 -0
  48. package/skills/to-html/designs/kakaobank.DESIGN.md +548 -0
  49. package/skills/to-html/designs/kakaopay.DESIGN.md +544 -0
  50. package/skills/to-html/designs/karrot.DESIGN.md +445 -0
  51. package/skills/to-html/designs/kdan.DESIGN.md +160 -0
  52. package/skills/to-html/designs/krds.DESIGN.md +997 -0
  53. package/skills/to-html/designs/line.DESIGN.md +431 -0
  54. package/skills/to-html/designs/linear.app.DESIGN.md +548 -0
  55. package/skills/to-html/designs/miro.DESIGN.md +272 -0
  56. package/skills/to-html/designs/mistral.ai.DESIGN.md +353 -0
  57. package/skills/to-html/designs/money-forward.DESIGN.md +401 -0
  58. package/skills/to-html/designs/mongodb.DESIGN.md +357 -0
  59. package/skills/to-html/designs/naver.DESIGN.md +533 -0
  60. package/skills/to-html/designs/nhncloud.DESIGN.md +174 -0
  61. package/skills/to-html/designs/opencode.ai.DESIGN.md +388 -0
  62. package/skills/to-html/designs/pinterest.DESIGN.md +322 -0
  63. package/skills/to-html/designs/posthog.DESIGN.md +430 -0
  64. package/skills/to-html/designs/raycast.DESIGN.md +422 -0
  65. package/skills/to-html/designs/remember.DESIGN.md +460 -0
  66. package/skills/to-html/designs/resend.DESIGN.md +396 -0
  67. package/skills/to-html/designs/sanity.DESIGN.md +449 -0
  68. package/skills/to-html/designs/sendbird.DESIGN.md +285 -0
  69. package/skills/to-html/designs/smarthr.DESIGN.md +404 -0
  70. package/skills/to-html/designs/socar.DESIGN.md +403 -0
  71. package/skills/to-html/designs/spotify.DESIGN.md +265 -0
  72. package/skills/to-html/designs/supabase.DESIGN.md +348 -0
  73. package/skills/to-html/designs/superhuman.DESIGN.md +414 -0
  74. package/skills/to-html/designs/together.ai.DESIGN.md +356 -0
  75. package/skills/to-html/designs/toss.DESIGN.md +655 -0
  76. package/skills/to-html/designs/uber.DESIGN.md +387 -0
  77. package/skills/to-html/designs/upstage.DESIGN.md +232 -0
  78. package/skills/to-html/designs/velog.DESIGN.md +168 -0
  79. package/skills/to-html/designs/vercel.DESIGN.md +479 -0
  80. package/skills/to-html/designs/wanted.DESIGN.md +529 -0
  81. package/skills/to-html/designs/wise.DESIGN.md +276 -0
  82. package/skills/to-html/designs/yanolja.DESIGN.md +463 -0
  83. package/skills/to-html/designs/yeogiotte.DESIGN.md +459 -0
  84. package/skills/to-html/designs/zapier.DESIGN.md +433 -0
  85. package/skills/to-html/designs/zigzag.DESIGN.md +633 -0
  86. package/skills/to-issues/SKILL.md +84 -0
  87. package/skills/to-prd/SKILL.md +75 -0
  88. package/src/colors.js +15 -0
  89. package/src/link.js +47 -0
  90. package/src/prompt.js +137 -0
  91. package/src/skills.js +75 -0
@@ -0,0 +1,393 @@
1
+ ---
2
+ id: framer
3
+ name: Framer
4
+ country: US
5
+ category: design-tools
6
+ homepage: "https://www.framer.com"
7
+ primary_color: "#0055ff"
8
+ logo:
9
+ type: simpleicons
10
+ slug: framer
11
+ verified: "2026-05-15"
12
+ omd: "0.1"
13
+ ds:
14
+ name: Framer Brand Guidelines
15
+ url: "https://www.framer.com/brand"
16
+ type: brand
17
+ description: Framer's brand and trademark guidelines with logo rules and color palette.
18
+ og_image: "https://framerusercontent.com/assets/MFmOCFlEnwFAS9IP2HbUEH68axo.jpg"
19
+ ---
20
+
21
+ # Design System Inspiration of Framer
22
+
23
+ ## 1. Visual Theme & Atmosphere
24
+
25
+ Framer's website is a cinematic, tool-obsessed dark canvas that radiates the confidence of a design tool built by designers who worship craft. The entire experience is drenched in pure black — not a warm charcoal or a cozy dark gray, but an absolute void (`#000000`) that makes every element, every screenshot, every typographic flourish feel like it's floating in deep space. This is a website that treats its own product UI as the hero art, embedding full-fidelity screenshots and interactive demos directly into the narrative flow.
26
+
27
+ The typography is the signature move: GT Walsheim with aggressively tight letter-spacing (as extreme as -5.5px on 110px display text) creates headlines that feel compressed, kinetic, almost spring-loaded — like words under pressure that might expand at any moment. The transition to Inter for body text is seamless, with extensive OpenType feature usage (`cv01`, `cv05`, `cv09`, `cv11`, `ss03`, `ss07`) that gives even small text a refined, custom feel. Framer Blue (`#0099ff`) is deployed sparingly but decisively — as link color, border accents, and subtle ring shadows — creating a cold, electric throughline against the warm-less black.
28
+
29
+ The overall effect is a nightclub for web designers: dark, precise, seductive, and unapologetically product-forward. Every section exists to showcase what the tool can do, with the website itself serving as proof of concept.
30
+
31
+ **Key Characteristics:**
32
+ - Pure black (`#000000`) void canvas — absolute dark, not warm or gray-tinted
33
+ - GT Walsheim display font with extreme negative letter-spacing (-5.5px at 110px)
34
+ - Framer Blue (`#0099ff`) as the sole accent color — cold, electric, precise
35
+ - Pill-shaped buttons (40px–100px radius) — no sharp corners on interactive elements
36
+ - Product screenshots as hero art — the tool IS the marketing
37
+ - Frosted glass button variants using `rgba(255, 255, 255, 0.1)` on dark surfaces
38
+ - Extensive OpenType feature usage across Inter for refined micro-typography
39
+
40
+ ## 2. Color Palette & Roles
41
+
42
+ ### Primary
43
+ - **Pure Black** (`#000000`): Primary background, the void canvas that defines Framer's dark-first identity
44
+ - **Pure White** (`#ffffff`): Primary text color on dark surfaces, button text on accent backgrounds
45
+ - **Framer Blue** (`#0099ff`): Primary accent color — links, borders, ring shadows, interactive highlights
46
+
47
+ ### Secondary & Accent
48
+ - **Muted Silver** (`#a6a6a6`): Secondary text, subdued labels, dimmed descriptions on dark surfaces
49
+ - **Near Black** (`#090909`): Elevated dark surface, shadow ring color for subtle depth separation
50
+
51
+ ### Surface & Background
52
+ - **Void Black** (`#000000`): Page background, primary canvas
53
+ - **Frosted White** (`rgba(255, 255, 255, 0.1)`): Translucent button backgrounds, glass-effect surfaces on dark
54
+ - **Subtle White** (`rgba(255, 255, 255, 0.5)`): Slightly more opaque frosted elements for hover states
55
+
56
+ ### Neutrals & Text
57
+ - **Pure White** (`#ffffff`): Heading text, high-emphasis body text
58
+ - **Muted Silver** (`#a6a6a6`): Body text, descriptions, secondary information
59
+ - **Ghost White** (`rgba(255, 255, 255, 0.6)`): Tertiary text, placeholders on dark surfaces
60
+
61
+ ### Semantic & Accent
62
+ - **Framer Blue** (`#0099ff`): Links, interactive borders, focus rings
63
+ - **Blue Glow** (`rgba(0, 153, 255, 0.15)`): Focus ring shadow, subtle blue halo around interactive elements
64
+ - **Default Link Blue** (`#0000ee`): Standard browser link color (used sparingly in content areas)
65
+
66
+ ### Gradient System
67
+ - No prominent gradient usage — Framer relies on pure flat black surfaces with occasional blue-tinted glows for depth
68
+ - Subtle radial glow effects behind product screenshots using Framer Blue at very low opacity
69
+
70
+ ## 3. Typography Rules
71
+
72
+ ### Font Family
73
+ - **Display**: `GT Walsheim Framer Medium` / `GT Walsheim Medium` — custom geometric sans-serif, weight 500. Fallbacks: `GT Walsheim Framer Medium Placeholder`, system sans-serif
74
+ - **Body/UI**: `Inter Variable` / `Inter` — variable sans-serif with extensive OpenType features. Fallbacks: `Inter Placeholder`, `-apple-system`, `system-ui`
75
+ - **Accent**: `Mona Sans` — GitHub's open-source font, used for select elements at ultra-light weight (100)
76
+ - **Monospace**: `Azeret Mono` — companion mono for code and technical labels
77
+ - **Rounded**: `Open Runde` — small rounded companion font for micro-labels
78
+
79
+ ### Hierarchy
80
+
81
+ | Role | Font | Size | Weight | Line Height | Letter Spacing | Notes |
82
+ |------|------|------|--------|-------------|----------------|-------|
83
+ | Display Hero | GT Walsheim Framer Medium | 110px | 500 | 0.85 | -5.5px | Extreme negative tracking, compressed impact |
84
+ | Section Display | GT Walsheim Medium | 85px | 500 | 0.95 | -4.25px | OpenType: ss02, tnum |
85
+ | Section Heading | GT Walsheim Medium | 62px | 500 | 1.00 | -3.1px | OpenType: ss02 |
86
+ | Feature Heading | GT Walsheim Medium | 32px | 500 | 1.13 | -1px | Tightest of the smaller headings |
87
+ | Accent Display | Mona Sans | 61.5px | 100 | 1.00 | -3.1px | Ultra-light weight, ethereal |
88
+ | Card Title | Inter Variable | 24px | 400 | 1.30 | -0.01px | OpenType: cv01, cv05, cv09, cv11, ss03, ss07 |
89
+ | Feature Title | Inter | 22px | 700 | 1.20 | -0.8px | OpenType: cv05 |
90
+ | Sub-heading | Inter | 20px | 600 | 1.20 | -0.8px | OpenType: cv01, cv09 |
91
+ | Body Large | Inter Variable | 18px | 400 | 1.30 | -0.01px | OpenType: cv01, cv05, cv09, cv11, ss03, ss07 |
92
+ | Body | Inter Variable | 15px | 400 | 1.30 | -0.01px | OpenType: cv11 |
93
+ | Nav/UI | Inter Variable | 15px | 400 | 1.00 | -0.15px | OpenType: cv06, cv11, dlig, ss03 |
94
+ | Body Readable | Inter Framer Regular | 14px | 400 | 1.60 | normal | Long-form body text |
95
+ | Caption | Inter Variable | 14px | 400 | 1.40 | normal | OpenType: cv01, cv06, cv09, cv11, ss03, ss07 |
96
+ | Label | Inter | 13px | 500 | 1.60 | normal | OpenType: cv06, cv11, ss03 |
97
+ | Small Caption | Inter Variable | 12px | 400 | 1.40 | normal | OpenType: cv01, cv06, cv09, cv11, ss03, ss07 |
98
+ | Micro Code | Azeret Mono | 10.4px | 400 | 1.60 | normal | OpenType: cv06, cv11, ss03 |
99
+ | Badge | Open Runde | 9px | 600 | 1.11 | normal | OpenType: cv01, cv09 |
100
+ | Micro Uppercase | Inter Variable | 7px | 400 | 1.00 | 0.21px | uppercase transform |
101
+
102
+ ### Principles
103
+ - **Compression as personality**: GT Walsheim's extreme negative letter-spacing (-5.5px at 110px) is the defining typographic gesture — headlines feel spring-loaded, urgent, almost breathless
104
+ - **OpenType maximalism**: Inter is deployed with 6+ OpenType features simultaneously (`cv01`, `cv05`, `cv09`, `cv11`, `ss03`, `ss07`), creating a subtly custom feel even at body sizes
105
+ - **Weight restraint on display**: All GT Walsheim usage is weight 500 (medium) — never bold, never regular. This creates a confident-but-not-aggressive display tone
106
+ - **Ultra-tight line heights**: Display text at 0.85 line-height means letters nearly overlap vertically — intentional density that rewards reading at arm's length
107
+
108
+ ## 4. Component Stylings
109
+
110
+ ### Buttons
111
+
112
+ **Solid White Pill**
113
+ - Background: `#ffffff`
114
+ - Text: `#000000`
115
+ - Radius: 100px (pill)
116
+ - Padding: 10px 15px
117
+ - Font: 15px / 400 / Inter
118
+ - Use: Primary CTA — clean, high-contrast on dark
119
+
120
+ **Frosted Pill**
121
+ - Background: `rgba(255, 255, 255, 0.1)`
122
+ - Text: `#ffffff`
123
+ - Radius: 40px
124
+ - Padding: 10px 15px
125
+ - Font: 15px / 400 / Inter
126
+ - Use: Glass-effect button on dark surfaces — translucent, ambient
127
+
128
+ **Ghost**
129
+ - Background: transparent
130
+ - Text: `#ffffff`
131
+ - Radius: 40px
132
+ - Padding: 10px 15px
133
+ - Hover: frosted background `rgba(255, 255, 255, 0.1)`
134
+ - Use: Tertiary action — text-only
135
+
136
+ ### Inputs
137
+
138
+ **Dark Input**
139
+ - Background: `#090909`
140
+ - Text: `#ffffff`
141
+ - Border: 1px solid `rgba(255, 255, 255, 0.1)`
142
+ - Radius: 8px
143
+ - Padding: 10px 12px
144
+ - Focus: 1px solid `#0099ff` ring with `rgba(0, 153, 255, 0.15)` glow
145
+ - Placeholder: `rgba(255, 255, 255, 0.4)`
146
+ - Use: Form input on dark theme (marketing site has minimal forms)
147
+
148
+ ### Cards
149
+
150
+ **Dark Surface Card**
151
+ - Background: `#090909`
152
+ - Text: `#ffffff`
153
+ - Radius: 12px
154
+ - Padding: 24px
155
+ - Shadow: `rgba(0, 153, 255, 0.15) 0px 0px 0px 1px` (Framer Blue ring border)
156
+ - Use: Standard dark surface card with blue ring border
157
+
158
+ **Elevated Card**
159
+ - Background: `#090909`
160
+ - Text: `#ffffff`
161
+ - Radius: 12px
162
+ - Padding: 24px
163
+ - Shadow: `rgba(255, 255, 255, 0.1) 0px 0.5px 0px 0.5px, rgba(0, 0, 0, 0.25) 0px 10px 30px`
164
+ - Use: Elevated card — subtle top highlight + deep ambient shadow
165
+
166
+ **Product Screenshot**
167
+ - Background: transparent (or `#090909`)
168
+ - Radius: 10px
169
+ - Padding: 0px
170
+ - Use: Software UI preview frame within dark containers
171
+
172
+ ### Badges
173
+
174
+ **Default**
175
+ - Background: `rgba(255, 255, 255, 0.1)`
176
+ - Text: `#ffffff`
177
+ - Radius: 9999px (pill)
178
+ - Padding: 4px 10px
179
+ - Font: 12px / 400 / Inter
180
+ - Use: Inferred from §1-§2 baseline (no explicit DS variant in source) — frosted pill badge on dark theme.
181
+
182
+ ### Navigation
183
+ - **Dark floating nav bar**: Black background with frosted glass effect, white text links
184
+ - **Nav links**: Inter at 15px, weight 400, white text with subtle hover opacity change
185
+ - **CTA button**: Pill-shaped, white or frosted, positioned at right end of nav
186
+ - **Mobile**: Collapses to hamburger menu, maintains dark theme
187
+ - **Sticky behavior**: Nav remains fixed at top on scroll
188
+
189
+ ### Image Treatment
190
+ - **Product screenshots as hero art**: Full-width embedded UI screenshots with rounded corners (8px–12px)
191
+ - **Dark-on-dark composition**: Screenshots placed on black backgrounds with subtle shadow for depth separation
192
+ - **16:9 and custom aspect ratios**: Product demos fill their containers
193
+ - **No decorative imagery**: All images are functional — showing the tool, the output, or the workflow
194
+
195
+ ### Trust & Social Proof
196
+ - Customer logos and testimonials in muted gray on dark surfaces
197
+ - Minimal ornamentation — the product screenshots serve as the trust signal
198
+
199
+ ## 5. Layout Principles
200
+
201
+ ### Spacing System
202
+ - **Base unit**: 8px
203
+ - **Scale**: 1px, 2px, 3px, 4px, 5px, 6px, 8px, 10px, 12px, 15px, 20px, 30px, 35px
204
+ - **Section padding**: Large vertical spacing (80px–120px between sections)
205
+ - **Card padding**: 15px–30px internal padding
206
+ - **Component gaps**: 8px–20px between related elements
207
+
208
+ ### Grid & Container
209
+ - **Max width**: ~1200px container, centered
210
+ - **Column patterns**: Full-width hero, 2-column feature sections, single-column product showcases
211
+ - **Asymmetric layouts**: Feature sections often pair text (40%) with screenshot (60%)
212
+
213
+ ### Whitespace Philosophy
214
+ - **Breathe through darkness**: Generous vertical spacing between sections — the black background means whitespace manifests as void, creating dramatic pauses between content blocks
215
+ - **Dense within, spacious between**: Individual components are tightly composed (tight line-heights, compressed text) but float in generous surrounding space
216
+ - **Product-first density**: Screenshot areas are allowed to be dense and information-rich, contrasting with the sparse marketing text
217
+
218
+ ### Border Radius Scale
219
+ - **1px**: Micro-elements, nearly squared precision edges
220
+ - **5px–7px**: Small UI elements, image thumbnails — subtly softened
221
+ - **8px**: Standard component radius — code blocks, buttons, interactive elements
222
+ - **10px–12px**: Cards, product screenshots — comfortably rounded
223
+ - **15px–20px**: Large containers, feature cards — generously rounded
224
+ - **30px–40px**: Navigation pills, pagination — noticeably rounded
225
+ - **100px**: Full pill shape — primary CTAs, tag elements
226
+
227
+ ## 6. Depth & Elevation
228
+
229
+ | Level | Treatment | Use |
230
+ |-------|-----------|-----|
231
+ | Level 0 (Flat) | No shadow, pure black surface | Page background, empty areas |
232
+ | Level 1 (Ring) | `rgba(0, 153, 255, 0.15) 0px 0px 0px 1px` | Card borders, interactive element outlines — Framer Blue glow ring |
233
+ | Level 2 (Contained) | `rgb(9, 9, 9) 0px 0px 0px 2px` | Near-black ring for subtle containment on dark surfaces |
234
+ | Level 3 (Floating) | `rgba(255, 255, 255, 0.1) 0px 0.5px 0px 0.5px, rgba(0, 0, 0, 0.25) 0px 10px 30px` | Elevated cards, floating elements — subtle white top-edge highlight + deep ambient shadow |
235
+
236
+ ### Shadow Philosophy
237
+ Framer's elevation system is inverted from traditional light-theme designs. Instead of darker shadows on light backgrounds, Framer uses:
238
+ - **Blue-tinted ring shadows** at very low opacity (0.15) for containment — a signature move that subtly brands every bordered element
239
+ - **White edge highlights** (0.5px) on the top edge of elevated elements — simulating light hitting the top surface
240
+ - **Deep ambient shadows** for true floating elements — `rgba(0, 0, 0, 0.25)` at large spread (30px)
241
+
242
+ ### Decorative Depth
243
+ - **Blue glow auras**: Subtle Framer Blue (`#0099ff`) radial gradients behind key interactive areas
244
+ - **No background blur/glassmorphism**: Despite the frosted button effect, there's no heavy glass blur usage — the translucency is achieved through simple rgba opacity
245
+
246
+ ## 7. Do's and Don'ts
247
+
248
+ ### Do
249
+ - Use pure black (`#000000`) as the primary background — not dark gray, not charcoal
250
+ - Apply extreme negative letter-spacing on GT Walsheim display text (-3px to -5.5px)
251
+ - Keep all buttons pill-shaped (40px+ radius) — never use squared or slightly-rounded buttons
252
+ - Use Framer Blue (`#0099ff`) exclusively for interactive accents — links, borders, focus states
253
+ - Deploy `rgba(255, 255, 255, 0.1)` for frosted glass surfaces on dark backgrounds
254
+ - Maintain GT Walsheim at weight 500 only — the medium weight IS the brand
255
+ - Use extensive OpenType features on Inter text (cv01, cv05, cv09, cv11, ss03, ss07)
256
+ - Let product screenshots be the visual centerpiece — the tool markets itself
257
+ - Apply blue ring shadows (`rgba(0, 153, 255, 0.15) 0px 0px 0px 1px`) for card containment
258
+
259
+ ### Don't
260
+ - Use warm dark backgrounds (no `#1a1a1a`, `#2d2d2d`, or brownish blacks)
261
+ - Apply bold (700+) weight to GT Walsheim display text — medium 500 only
262
+ - Introduce additional accent colors beyond Framer Blue — this is a one-accent-color system
263
+ - Use large border-radius on non-interactive elements (cards use 10px–15px, only buttons get 40px+)
264
+ - Add decorative imagery, illustrations, or icons — the product IS the illustration
265
+ - Use positive letter-spacing on headlines — everything is compressed, negative tracking
266
+ - Create heavy drop shadows — depth is communicated through subtle rings and minimal ambients
267
+ - Place light/white backgrounds behind content sections — the void is sacred
268
+ - Use serif or display-weight fonts — the system is geometric sans-serif only
269
+
270
+ ## 8. Responsive Behavior
271
+
272
+ ### Breakpoints
273
+ | Name | Width | Key Changes |
274
+ |------|-------|-------------|
275
+ | Mobile | <809px | Single column, stacked feature sections, reduced hero text (62px→40px), hamburger nav |
276
+ | Tablet | 809px–1199px | 2-column features begin, nav links partially visible, screenshots scale down |
277
+ | Desktop | >1199px | Full layout, expanded nav with all links + CTA, 110px display hero, side-by-side features |
278
+
279
+ ### Touch Targets
280
+ - Pill buttons: minimum 40px height with 10px vertical padding — exceeds 44px WCAG minimum
281
+ - Nav links: 15px text with generous padding for touch accessibility
282
+ - Mobile CTA buttons: Full-width pills on mobile for easy thumb reach
283
+
284
+ ### Collapsing Strategy
285
+ - **Navigation**: Full horizontal nav → hamburger menu at mobile breakpoint
286
+ - **Hero text**: 110px display → 85px → 62px → ~40px across breakpoints, maintaining extreme negative tracking proportionally
287
+ - **Feature sections**: Side-by-side (text + screenshot) → stacked vertically on mobile
288
+ - **Product screenshots**: Scale responsively within containers, maintaining aspect ratios
289
+ - **Section spacing**: Reduces proportionally — 120px desktop → 60px mobile
290
+
291
+ ### Image Behavior
292
+ - Product screenshots are responsive, scaling within their container boundaries
293
+ - No art direction changes — same crops across breakpoints
294
+ - Dark background ensures screenshots maintain visual impact at any size
295
+ - Screenshots lazy-load as user scrolls into view
296
+
297
+ ## 9. Agent Prompt Guide
298
+
299
+ ### Quick Color Reference
300
+ - Primary Background: Void Black (`#000000`)
301
+ - Primary Text: Pure White (`#ffffff`)
302
+ - Accent/CTA: Framer Blue (`#0099ff`)
303
+ - Secondary Text: Muted Silver (`#a6a6a6`)
304
+ - Frosted Surface: Translucent White (`rgba(255, 255, 255, 0.1)`)
305
+ - Elevation Ring: Blue Glow (`rgba(0, 153, 255, 0.15)`)
306
+
307
+ ### Example Component Prompts
308
+ - "Create a hero section on pure black background with 110px GT Walsheim heading in white, letter-spacing -5.5px, line-height 0.85, and a pill-shaped white CTA button (100px radius) with black text"
309
+ - "Design a feature card on black background with a 1px Framer Blue ring shadow border (rgba(0,153,255,0.15)), 12px border-radius, white heading in Inter at 22px weight 700, and muted silver (a6a6a6) body text"
310
+ - "Build a navigation bar with black background, white Inter text links at 15px, and a frosted pill button (rgba(255,255,255,0.1) background, 40px radius) as the CTA"
311
+ - "Create a product showcase section with a full-width screenshot embedded on black, 10px border-radius, subtle multi-layer shadow (white 0.5px top highlight + rgba(0,0,0,0.25) 30px ambient)"
312
+ - "Design a pricing card using pure black surface, Framer Blue (#0099ff) accent for the selected plan border, white text hierarchy (24px Inter bold heading, 14px regular body), and a solid white pill CTA button"
313
+
314
+ ### Iteration Guide
315
+ When refining existing screens generated with this design system:
316
+ 1. Focus on ONE component at a time — the dark canvas makes each element precious
317
+ 2. Always verify letter-spacing on GT Walsheim headings — the extreme negative tracking is non-negotiable
318
+ 3. Check that Framer Blue appears ONLY on interactive elements — never as decorative background or text color for non-links
319
+ 4. Ensure all buttons are pill-shaped — any squared corner immediately breaks the Framer aesthetic
320
+ 5. Test frosted glass surfaces by checking they have exactly `rgba(255, 255, 255, 0.1)` — too opaque looks like a bug, too transparent disappears
321
+
322
+ ## 10. Voice & Tone
323
+
324
+ Framer's voice is **designer-warm and craft-confident** — speaks like a tool team that genuinely loves design conventions. Marketing emphasizes the joy of building professional websites without code. Hero copy keeps lower-case for warmth, headline-as-statement.
325
+
326
+ | Context | Tone |
327
+ |---|---|
328
+ | CTA | Verb. "Start for free", "Get started", "Sign up" |
329
+ | Marketing | Single claim, big screenshots dominate |
330
+ | Documentation | Visual-first, screenshots, clearly linked tutorials |
331
+ | Error (publishing) | Specific. "Domain SSL provisioning. Try again in 5 minutes." |
332
+
333
+ **Voice samples**
334
+ - Marketing tagline: *"Create a professional website, free."* <!-- verified: framer.com homepage 2026-05 -->
335
+
336
+ **Forbidden phrases.** "Revolutionary website builder", "magic". Aggressive "compete with Webflow" framing.
337
+
338
+ ## 11. Brand Narrative
339
+
340
+ Framer was founded **2014** in **Amsterdam** by **Koen Bok (CEO)** and **Jorn van Dijk** — both Dutch ex-Facebook designer-engineers who **previously co-founded the design studio Sofa**, acquired by Facebook in 2011 (where they shipped Messages, Ads, Video, Photos product surfaces) ([Tracxn — Framer](https://tracxn.com/d/companies/framer/__WwABy6r40KPszbW9ZaEHR6v4BX_MP8437KgHYLns7fo), [Jorn van Dijk personal](https://jornvandijk.com/)). Originally a **code-based prototyping tool** for designers at Apple/Google/Facebook (and the parent of the **Framer Motion** animation library now used across the React ecosystem). **Major pivot 2022-2023** to a no-code website builder competing with Webflow, while preserving the Framer Motion craft DNA. Funding ladder: **$1.35M Seed (Dec 2014)** → **€25.5M Series B (2022)** → **$27M Series C (Sep 2023)** led by **Meritech Capital** with **Atomico, Accel, Foundation Capital** → **$100M Series D (Aug 13 2025)** led by **Meritech + Atomico** with **WiL + HV Capital**, valuing Framer at **$2B "double-unicorn"** ([TechCrunch — Framer $2B](https://techcrunch.com/2025/08/28/no-code-website-builder-framer-reaches-2b-valuation/), [Sifted](https://sifted.eu/articles/framer-raises-100m), [I amsterdam — double unicorn](https://www.iamsterdam.com/en/business/framer-raises-100m-becoming-a-double-unicorn)). **Total raised ~$163M.** The brand voice tracks this evolution — design-tool-first identity, now a website tool that hasn't lost the craft register.
341
+
342
+ ## 12. Principles
343
+
344
+ 1. **Designer aesthetic, not engineer aesthetic.** *UI implication:* visual-first interfaces; canvas + properties, never code-only views in chrome.
345
+ 2. **Pill shapes signal "polished".** Any squared corner breaks the Framer aesthetic. *UI implication:* nav, buttons, cards — all pill-radius (24-36px).
346
+ 3. **Frosted glass for depth.** `rgba(255,255,255,0.1)` overlays. *UI implication:* layered floating panels never opaque.
347
+ 4. **Motion is the brand.** Framer Motion library. *UI implication:* every interaction has spring physics; static UIs feel un-Framer.
348
+ 5. **Live publish.** *UI implication:* "Publish" CTA shows live preview URL + redeploys without page reload.
349
+
350
+ ## 13. Personas
351
+
352
+ *Personas are fictional archetypes informed by Framer user segments (independent designers, design teams shipping marketing sites, agencies), not individual people.*
353
+
354
+ **Sofia Russo, 32, Milan.** Indie designer shipping client marketing sites. Replaced Webflow workflow with Framer for the better animation defaults.
355
+
356
+ **Henrik Sondergaard, 38, Copenhagen.** Lead designer at SaaS startup. Builds the public marketing site in Framer; engineers handle product app separately.
357
+
358
+ **Alex Park, 24, Seoul.** Junior designer building portfolio site. Framer template ecosystem made first launch possible without engineering help.
359
+
360
+ ## 14. States
361
+
362
+ | State | Treatment |
363
+ |---|---|
364
+ | **Empty (canvas)** | "Add a section" CTA + template gallery |
365
+ | **Empty (no projects)** | "Create your first project" + template browser |
366
+ | **Loading (publishing)** | Spring-animated progress chip with build status |
367
+ | **Loading (asset)** | Per-asset placeholder with shimmer |
368
+ | **Error (publish)** | Specific reason + retry, never blocking |
369
+ | **Error (CMS)** | Field-level inline message |
370
+ | **Success (published)** | Spring-bounce confirmation + URL copy |
371
+ | **Success (asset uploaded)** | Inline preview replaces placeholder |
372
+ | **Skeleton (project list)** | Frosted glass placeholders |
373
+ | **Disabled (free plan limit)** | 0.5 opacity + upgrade link |
374
+ | **Loading (collaborator typing)** | Avatar + cursor indicator on canvas |
375
+
376
+ ## 15. Motion & Easing
377
+
378
+ | Token | Value | Use |
379
+ |---|---|---|
380
+ | `motion-instant` | 0ms | Selection |
381
+ | `motion-fast` | 150ms | Hover |
382
+ | `motion-spring` | variable | Click → action commits with spring physics |
383
+ | `motion-standard` | 250ms | Modal, panel |
384
+
385
+ Easings: spring physics is the signature. **Spring on every commit** — buttons, modals, panels. `prefers-reduced-motion: reduce` collapses spring to opacity-only fade.
386
+
387
+ ---
388
+
389
+ **Verified:** 2026-05-08 (omd:migrate run 25 — Apple-tier)
390
+ **Tier 1 sources:** framer.com home + /pricing (live DOM via playwright — Primary `#fff` 100px full-pill three-tier {hero 35px / pricing-compact 29px / header-utility 15px-radius 28px} 10×14 / 12px·400; Translucent Secondary `rgba(255,255,255,0.10-0.15)` same geometry; **Framer Blue `#0099ff`** featured-pricing-tier accent).
391
+ **Tier 2 sources:** styles.refero.design / getdesign.md — no record.
392
+ **Tier 2 (Philosophy/founders):** Tracxn, Silicon Canals, TechCrunch (2025-08 $2B), Sifted, I amsterdam, Crunchbase.
393
+ **Style ref:** `notion`. **Conflicts unresolved:** none. **Earlier mistake reverted:** prior footer captured only header utility 15px-rect; canonical Hero Primary is 100px full-pill 35px height + Framer Blue `#0099ff` featured accent.