oh-my-design-cli 1.8.6 → 1.9.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/.claude/hooks/lib/preferences-parser.cjs +1 -0
- package/.claude/hooks/lib/preferences-writer.cjs +1 -0
- package/.claude/hooks/post-edit-watch.cjs +1 -0
- package/.claude/hooks/session-end-foldin.cjs +1 -0
- package/.claude/hooks/session-state-loader.cjs +1 -0
- package/.claude/hooks/skill-activation.cjs +1 -0
- package/.claude/settings.json +10 -1
- package/.github/assets/logo-bg.png +0 -0
- package/AGENTS.md +20 -1
- package/CHANGELOG.md +482 -0
- package/MIGRATION.md +103 -0
- package/README.ja.md +56 -19
- package/README.ko.md +47 -30
- package/README.md +48 -30
- package/README.zh-TW.md +59 -22
- package/agents/AGENT.md +8 -7
- package/agents/omd-codex-image.md +1 -1
- package/agents/omd-critic.md +6 -7
- package/agents/omd-designer-review.md +1 -1
- package/agents/omd-final-qa.md +1 -1
- package/agents/omd-humanizer.md +38 -0
- package/agents/omd-kr-writer.md +3 -4
- package/agents/omd-locale-adapter.md +12 -16
- package/agents/omd-master.md +24 -19
- package/agents/omd-microcopy.md +1 -1
- package/agents/omd-orchestrator.md +7 -8
- package/agents/omd-slop-auditor.md +31 -0
- package/agents/omd-ux-researcher.md +1 -1
- package/data/reference-fingerprints.json +2761 -85
- package/dist/bin/oh-my-design.js +16 -8
- package/dist/bin/oh-my-design.js.map +1 -1
- package/dist/chunk-UJIHCEYF.js +99 -0
- package/dist/chunk-UJIHCEYF.js.map +1 -0
- package/dist/doctor-LDWSFM3I.js +763 -0
- package/dist/doctor-LDWSFM3I.js.map +1 -0
- package/dist/install-skills-ZZFNJ2II.js +1120 -0
- package/dist/install-skills-ZZFNJ2II.js.map +1 -0
- package/docs/CLI_QUICKSTART.md +157 -0
- package/package.json +25 -4
- package/scripts/postinstall.cjs +5 -4
- package/skills/claude-design/SKILL.md +38 -14
- package/skills/claude-design/references/claude-design-flow.md +11 -11
- package/skills/claude-design/references/codebase-analysis.md +5 -4
- package/skills/omd-final-qa/SKILL.md +1 -1
- package/skills/omd-harness/SKILL.md +51 -50
- package/skills/omd-humanize/SKILL.md +116 -0
- package/skills/omd-humanize/agents/openai.yaml +4 -0
- package/skills/omd-humanize/references/locale-playbooks.md +102 -0
- package/skills/omd-humanize/references/sources.md +11 -0
- package/skills/omd-init/SKILL.md +18 -12
- package/skills/omd-locale-adapter/SKILL.md +58 -91
- package/skills/omd-orchestrator/SKILL.md +11 -5
- package/skills/omd-reference-capture/SKILL.md +80 -26
- package/skills/omd-reference-capture/scripts/PLAYWRIGHT-LICENSE.txt +202 -0
- package/skills/omd-reference-capture/scripts/PLAYWRIGHT-NOTICE.txt +5 -0
- package/skills/omd-reference-capture/scripts/THIRD_PARTY_NOTICES.md +3 -0
- package/skills/omd-reference-capture/scripts/capture-reference-evidence.mjs +159906 -0
- package/skills/omd-slop-audit/SKILL.md +110 -0
- package/skills/omd-slop-audit/agents/openai.yaml +4 -0
- package/skills/omd-slop-audit/references/pattern-catalog.md +96 -0
- package/skills/omd-slop-audit/references/sources.md +24 -0
- package/web/references/104/DESIGN.md +354 -0
- package/web/references/11st/DESIGN.md +197 -316
- package/web/references/29cm/DESIGN.md +297 -393
- package/web/references/42dot/DESIGN.md +390 -0
- package/web/references/8percent/DESIGN.md +438 -0
- package/web/references/ably/DESIGN.md +267 -572
- package/web/references/acer/DESIGN.md +329 -0
- package/web/references/airbnb/DESIGN.md +219 -557
- package/web/references/airbridge/DESIGN.md +451 -0
- package/web/references/alipay/DESIGN.md +179 -420
- package/web/references/apple/DESIGN.md +224 -498
- package/web/references/asleep/DESIGN.md +402 -0
- package/web/references/au/DESIGN.md +334 -0
- package/web/references/autopedia/DESIGN.md +382 -0
- package/web/references/aws-cloudscape/DESIGN.md +241 -0
- package/web/references/baemin/DESIGN.md +332 -491
- package/web/references/banksalad/DESIGN.md +269 -180
- package/web/references/barogo/DESIGN.md +416 -0
- package/web/references/beusable/DESIGN.md +464 -0
- package/web/references/bigin/DESIGN.md +454 -0
- package/web/references/bilibili/DESIGN.md +206 -374
- package/web/references/bmw/DESIGN.md +162 -276
- package/web/references/brandi/DESIGN.md +184 -325
- package/web/references/buzzvil/DESIGN.md +457 -0
- package/web/references/cafe24/DESIGN.md +472 -0
- package/web/references/catchtable/DESIGN.md +219 -264
- package/web/references/cgv/DESIGN.md +317 -0
- package/web/references/channeltalk/DESIGN.md +210 -336
- package/web/references/china-airlines/DESIGN.md +291 -0
- package/web/references/cjonstyle/DESIGN.md +453 -0
- package/web/references/class101/DESIGN.md +168 -387
- package/web/references/classum/DESIGN.md +228 -203
- package/web/references/claude/DESIGN.md +242 -479
- package/web/references/clay/DESIGN.md +179 -377
- package/web/references/clickhouse/DESIGN.md +254 -343
- package/web/references/codeit/DESIGN.md +470 -0
- package/web/references/cohere/DESIGN.md +214 -324
- package/web/references/coinone/DESIGN.md +199 -179
- package/web/references/corca/DESIGN.md +414 -0
- package/web/references/coupang/DESIGN.md +205 -475
- package/web/references/cursor/DESIGN.md +240 -381
- package/web/references/dabang/DESIGN.md +248 -213
- package/web/references/dable/DESIGN.md +431 -0
- package/web/references/datarize/DESIGN.md +338 -0
- package/web/references/dealicious/DESIGN.md +402 -0
- package/web/references/drdiary/DESIGN.md +404 -0
- package/web/references/elastic/DESIGN.md +238 -0
- package/web/references/elevenlabs/DESIGN.md +183 -321
- package/web/references/elice/DESIGN.md +445 -0
- package/web/references/eslite/DESIGN.md +257 -0
- package/web/references/evaair/DESIGN.md +338 -0
- package/web/references/expo/DESIGN.md +238 -331
- package/web/references/familymart-tw/DESIGN.md +254 -0
- package/web/references/ferrari/DESIGN.md +160 -377
- package/web/references/figma/DESIGN.md +197 -451
- package/web/references/fitpet/DESIGN.md +445 -0
- package/web/references/flex/DESIGN.md +170 -253
- package/web/references/framer/DESIGN.md +197 -340
- package/web/references/freee/DESIGN.md +211 -533
- package/web/references/friendliai/DESIGN.md +431 -0
- package/web/references/frip/DESIGN.md +440 -0
- package/web/references/furiosaai/DESIGN.md +450 -0
- package/web/references/gangnamunni/DESIGN.md +154 -591
- package/web/references/gaudiolab/DESIGN.md +414 -0
- package/web/references/google/DESIGN.md +290 -398
- package/web/references/goorm/DESIGN.md +470 -0
- package/web/references/greencar/DESIGN.md +420 -0
- package/web/references/hackle/DESIGN.md +472 -0
- package/web/references/hashicorp/DESIGN.md +273 -318
- package/web/references/heydealer/DESIGN.md +429 -0
- package/web/references/humanscape/DESIGN.md +433 -0
- package/web/references/hwahae/DESIGN.md +453 -0
- package/web/references/hyundai/DESIGN.md +158 -368
- package/web/references/hyundaicard/DESIGN.md +171 -121
- package/web/references/ibm/DESIGN.md +227 -378
- package/web/references/idus/DESIGN.md +450 -0
- package/web/references/igaworks/DESIGN.md +437 -0
- package/web/references/inflearn/DESIGN.md +221 -366
- package/web/references/intuit/DESIGN.md +244 -0
- package/web/references/jandi/DESIGN.md +191 -291
- package/web/references/jobplanet/DESIGN.md +415 -0
- package/web/references/kakao/DESIGN.md +287 -475
- package/web/references/kakaobank/DESIGN.md +220 -521
- package/web/references/kakaogames/DESIGN.md +220 -0
- package/web/references/kakaopay/DESIGN.md +207 -526
- package/web/references/karrot/DESIGN.md +227 -251
- package/web/references/kb-kookmin/DESIGN.md +308 -0
- package/web/references/kbank/DESIGN.md +220 -175
- package/web/references/kcd/DESIGN.md +432 -0
- package/web/references/kmong/DESIGN.md +281 -356
- package/web/references/krds/DESIGN.md +245 -19
- package/web/references/kream/DESIGN.md +224 -359
- package/web/references/kurly/DESIGN.md +211 -533
- package/web/references/kyobobook/DESIGN.md +445 -0
- package/web/references/lablup/DESIGN.md +474 -0
- package/web/references/lamborghini/DESIGN.md +198 -360
- package/web/references/lemonbase/DESIGN.md +452 -0
- package/web/references/lguplus/DESIGN.md +259 -0
- package/web/references/likelion/DESIGN.md +283 -0
- package/web/references/line/DESIGN.md +396 -355
- package/web/references/linear.app/DESIGN.md +209 -562
- package/web/references/lotteon/DESIGN.md +386 -0
- package/web/references/lovable/DESIGN.md +255 -349
- package/web/references/makinarocks/DESIGN.md +242 -0
- package/web/references/maum-ai/DESIGN.md +423 -0
- package/web/references/medibloc/DESIGN.md +425 -0
- package/web/references/megabox/DESIGN.md +232 -0
- package/web/references/mercari/DESIGN.md +217 -434
- package/web/references/microsoft/DESIGN.md +234 -388
- package/web/references/mildang/DESIGN.md +411 -0
- package/web/references/millie/DESIGN.md +183 -504
- package/web/references/minimax/DESIGN.md +264 -322
- package/web/references/miricanvas/DESIGN.md +182 -355
- package/web/references/miro/DESIGN.md +234 -232
- package/web/references/mistral.ai/DESIGN.md +231 -314
- package/web/references/mixi/DESIGN.md +234 -0
- package/web/references/moin/DESIGN.md +445 -0
- package/web/references/mongodb/DESIGN.md +219 -316
- package/web/references/moreh/DESIGN.md +437 -0
- package/web/references/musinsa/DESIGN.md +184 -510
- package/web/references/mynavi/DESIGN.md +242 -0
- package/web/references/myrealtrip/DESIGN.md +169 -406
- package/web/references/naver/DESIGN.md +328 -499
- package/web/references/naverwebtoon/DESIGN.md +172 -395
- package/web/references/neosapience/DESIGN.md +441 -0
- package/web/references/nhn/DESIGN.md +169 -346
- package/web/references/nhncloud/DESIGN.md +185 -123
- package/web/references/nota/DESIGN.md +451 -0
- package/web/references/notion/DESIGN.md +271 -475
- package/web/references/nrise/DESIGN.md +417 -0
- package/web/references/ohouse/DESIGN.md +210 -549
- package/web/references/oliveyoung/DESIGN.md +217 -326
- package/web/references/ollama/DESIGN.md +241 -308
- package/web/references/onestore/DESIGN.md +248 -0
- package/web/references/palantir/DESIGN.md +256 -0
- package/web/references/panasonic/DESIGN.md +276 -0
- package/web/references/patternfly/DESIGN.md +259 -0
- package/web/references/payhere/DESIGN.md +438 -0
- package/web/references/pega/DESIGN.md +262 -0
- package/web/references/peoplefund/DESIGN.md +431 -0
- package/web/references/petfriends/DESIGN.md +428 -0
- package/web/references/pinkfong/DESIGN.md +199 -367
- package/web/references/pinterest/DESIGN.md +258 -308
- package/web/references/portone/DESIGN.md +446 -0
- package/web/references/poya/DESIGN.md +286 -0
- package/web/references/pozalabs/DESIGN.md +438 -0
- package/web/references/protopie/DESIGN.md +419 -0
- package/web/references/qraft/DESIGN.md +448 -0
- package/web/references/queenit/DESIGN.md +432 -0
- package/web/references/quotabook/DESIGN.md +449 -0
- package/web/references/rebellions/DESIGN.md +449 -0
- package/web/references/recruit/DESIGN.md +247 -0
- package/web/references/remember/DESIGN.md +202 -396
- package/web/references/resend/DESIGN.md +274 -348
- package/web/references/returnzero/DESIGN.md +460 -0
- package/web/references/sakura-internet/DESIGN.md +269 -0
- package/web/references/samsung/DESIGN.md +157 -359
- package/web/references/sandoll/DESIGN.md +445 -0
- package/web/references/sanity/DESIGN.md +241 -375
- package/web/references/saramin/DESIGN.md +465 -0
- package/web/references/scatterlab/DESIGN.md +412 -0
- package/web/references/selectstar/DESIGN.md +439 -0
- package/web/references/servicenow/DESIGN.md +289 -0
- package/web/references/shiftee/DESIGN.md +468 -0
- package/web/references/shinhanbank/DESIGN.md +161 -341
- package/web/references/shinhancard/DESIGN.md +208 -319
- package/web/references/sionic/DESIGN.md +454 -0
- package/web/references/sktelecom/DESIGN.md +310 -0
- package/web/references/socar/DESIGN.md +125 -32
- package/web/references/softbank/DESIGN.md +231 -0
- package/web/references/solapi/DESIGN.md +483 -0
- package/web/references/sony/DESIGN.md +234 -0
- package/web/references/soop/DESIGN.md +261 -0
- package/web/references/spacex/DESIGN.md +184 -323
- package/web/references/spotify/DESIGN.md +253 -394
- package/web/references/squeezebits/DESIGN.md +441 -0
- package/web/references/stayfolio/DESIGN.md +422 -0
- package/web/references/stripe/DESIGN.md +212 -491
- package/web/references/supabase/DESIGN.md +244 -316
- package/web/references/supertone/DESIGN.md +413 -0
- package/web/references/tabling/DESIGN.md +415 -0
- package/web/references/taishinbank/DESIGN.md +243 -0
- package/web/references/teamlab/DESIGN.md +240 -0
- package/web/references/teamsparta/DESIGN.md +472 -0
- package/web/references/tellingme/DESIGN.md +392 -0
- package/web/references/tesla/DESIGN.md +244 -427
- package/web/references/thsr/DESIGN.md +284 -0
- package/web/references/thumbtack/DESIGN.md +302 -0
- package/web/references/together.ai/DESIGN.md +257 -304
- package/web/references/toss/DESIGN.md +251 -593
- package/web/references/toss-securities/DESIGN.md +255 -178
- package/web/references/tossbank/DESIGN.md +195 -491
- package/web/references/toyota/DESIGN.md +238 -0
- package/web/references/tving/DESIGN.md +197 -245
- package/web/references/typed/DESIGN.md +413 -0
- package/web/references/uber/DESIGN.md +256 -333
- package/web/references/udn/DESIGN.md +250 -0
- package/web/references/upbit/DESIGN.md +145 -256
- package/web/references/upstage/DESIGN.md +211 -204
- package/web/references/uswds/DESIGN.md +287 -0
- package/web/references/vercel/DESIGN.md +236 -440
- package/web/references/vuno/DESIGN.md +413 -0
- package/web/references/wanted/DESIGN.md +215 -487
- package/web/references/weverse/DESIGN.md +437 -0
- package/web/references/wise/DESIGN.md +223 -231
- package/web/references/wisetracker/DESIGN.md +462 -0
- package/web/references/wooribank/DESIGN.md +245 -0
- package/web/references/yanolja/DESIGN.md +250 -419
- package/web/references/yeogiotte/DESIGN.md +235 -418
- package/web/references/zapier/DESIGN.md +256 -377
- package/web/references/zendesk/DESIGN.md +288 -0
- package/web/references/zigzag/DESIGN.md +200 -621
- package/dist/install-skills-7UUDOLG2.js +0 -734
- package/dist/install-skills-7UUDOLG2.js.map +0 -1
|
@@ -8,424 +8,281 @@ primary_color: "#0055ff"
|
|
|
8
8
|
logo:
|
|
9
9
|
type: simpleicons
|
|
10
10
|
slug: framer
|
|
11
|
-
verified: "2026-
|
|
11
|
+
verified: "2026-07-13"
|
|
12
12
|
omd: "0.1"
|
|
13
13
|
ds:
|
|
14
14
|
name: Framer Brand Guidelines
|
|
15
|
-
url: "https://www.framer.com/brand"
|
|
15
|
+
url: "https://www.framer.com/brand?page=1"
|
|
16
16
|
type: brand
|
|
17
|
-
description:
|
|
17
|
+
description: Official mark, color, and trademark-use guidance.
|
|
18
18
|
og_image: "https://framerusercontent.com/assets/MFmOCFlEnwFAS9IP2HbUEH68axo.jpg"
|
|
19
|
+
verification_v2:
|
|
20
|
+
schema: 2
|
|
21
|
+
checked: "2026-07-13"
|
|
22
|
+
surfaces:
|
|
23
|
+
- { id: home, kind: marketing, url: "https://www.framer.com/", inspected: "2026-07-13" }
|
|
24
|
+
- { id: surface-2, kind: community, url: "https://www.framer.com/community/marketplace/components/", inspected: "2026-07-13" }
|
|
25
|
+
- { id: surface-3, kind: marketing, url: "https://www.framer.com/pricing", inspected: "2026-07-13" }
|
|
26
|
+
sources:
|
|
27
|
+
- { id: home-live, kind: product-surface, url: "https://www.framer.com/", captured: "2026-07-13" }
|
|
28
|
+
- { id: marketplace-live, kind: product-surface, url: "https://www.framer.com/community/marketplace/components/", captured: "2026-07-13" }
|
|
29
|
+
- { id: pricing-live, kind: product-surface, url: "https://www.framer.com/pricing", captured: "2026-07-13" }
|
|
30
|
+
- { id: brand-guidelines, kind: brand-asset, url: "https://www.framer.com/brand?page=1", captured: "2026-07-13" }
|
|
31
|
+
- { id: inter-license, kind: license, url: "https://github.com/rsms/inter/blob/master/LICENSE.txt", captured: "2026-07-13" }
|
|
32
|
+
conflicts: []
|
|
33
|
+
claims:
|
|
34
|
+
"tokens.colors.canvas": { surface_id: home, source_id: home-live, method: computed-style, captured: "2026-07-13" }
|
|
35
|
+
"tokens.colors.foreground": { surface_id: home, source_id: home-live, method: computed-style, captured: "2026-07-13" }
|
|
36
|
+
"tokens.colors.muted": { surface_id: home, source_id: home-live, method: computed-style, captured: "2026-07-13" }
|
|
37
|
+
"tokens.colors.marketplace-surface": { surface_id: surface-2, source_id: marketplace-live, method: computed-style, captured: "2026-07-13" }
|
|
38
|
+
"tokens.colors.accent": { surface_id: surface-2, source_id: marketplace-live, method: computed-style, captured: "2026-07-13" }
|
|
39
|
+
"tokens.typography.family.ui": { surface_id: surface-2, source_id: marketplace-live, method: computed-style, captured: "2026-07-13" }
|
|
40
|
+
"tokens.typography.family.display": { surface_id: home, source_id: home-live, method: computed-style, captured: "2026-07-13" }
|
|
41
|
+
"tokens.typography.public-body.size": { surface_id: home, source_id: home-live, method: computed-style, captured: "2026-07-13" }
|
|
42
|
+
"tokens.typography.public-body.weight": { surface_id: home, source_id: home-live, method: computed-style, captured: "2026-07-13" }
|
|
43
|
+
"tokens.typography.public-body.lineHeight": { surface_id: home, source_id: home-live, method: computed-style, captured: "2026-07-13" }
|
|
44
|
+
"tokens.typography.public-body.tracking": { surface_id: home, source_id: home-live, method: computed-style, captured: "2026-07-13" }
|
|
45
|
+
"tokens.typography.public-body.use": { surface_id: home, source_id: home-live, method: computed-style, captured: "2026-07-13" }
|
|
46
|
+
"tokens.spacing.compact-x": { surface_id: surface-2, source_id: marketplace-live, method: computed-style, captured: "2026-07-13" }
|
|
47
|
+
"tokens.spacing.menu-inset": { surface_id: surface-2, source_id: marketplace-live, method: computed-style, captured: "2026-07-13" }
|
|
48
|
+
"tokens.rounded.compact": { surface_id: surface-2, source_id: marketplace-live, method: computed-style, captured: "2026-07-13" }
|
|
49
|
+
"tokens.rounded.menu": { surface_id: surface-2, source_id: marketplace-live, method: computed-style, captured: "2026-07-13" }
|
|
50
|
+
"tokens.rounded.category-card": { surface_id: surface-2, source_id: marketplace-live, method: computed-style, captured: "2026-07-13" }
|
|
51
|
+
"tokens.shadow.marketplace-menu": { surface_id: surface-2, source_id: marketplace-live, method: computed-style, captured: "2026-07-13" }
|
|
52
|
+
"tokens.components.marketplace-filter.type": { surface_id: surface-2, source_id: marketplace-live, method: computed-style, captured: "2026-07-13" }
|
|
53
|
+
"tokens.components.marketplace-filter.bg": { surface_id: surface-2, source_id: marketplace-live, method: computed-style, captured: "2026-07-13" }
|
|
54
|
+
"tokens.components.marketplace-filter.fg": { surface_id: surface-2, source_id: marketplace-live, method: computed-style, captured: "2026-07-13" }
|
|
55
|
+
"tokens.components.marketplace-filter.radius": { surface_id: surface-2, source_id: marketplace-live, method: computed-style, captured: "2026-07-13" }
|
|
56
|
+
"tokens.components.marketplace-filter.padding": { surface_id: surface-2, source_id: marketplace-live, method: computed-style, captured: "2026-07-13" }
|
|
57
|
+
"tokens.components.marketplace-filter.font": { surface_id: surface-2, source_id: marketplace-live, method: computed-style, captured: "2026-07-13" }
|
|
58
|
+
"tokens.components.marketplace-filter.states": { surface_id: surface-2, source_id: marketplace-live, method: interaction-capture, captured: "2026-07-13" }
|
|
59
|
+
"tokens.components.marketplace-filter.use": { surface_id: surface-2, source_id: marketplace-live, method: computed-style, captured: "2026-07-13" }
|
|
60
|
+
"tokens.components.marketplace-category.type": { surface_id: surface-2, source_id: marketplace-live, method: computed-style, captured: "2026-07-13" }
|
|
61
|
+
"tokens.components.marketplace-category.bg": { surface_id: surface-2, source_id: marketplace-live, method: computed-style, captured: "2026-07-13" }
|
|
62
|
+
"tokens.components.marketplace-category.fg": { surface_id: surface-2, source_id: marketplace-live, method: computed-style, captured: "2026-07-13" }
|
|
63
|
+
"tokens.components.marketplace-category.radius": { surface_id: surface-2, source_id: marketplace-live, method: computed-style, captured: "2026-07-13" }
|
|
64
|
+
"tokens.components.marketplace-category.use": { surface_id: surface-2, source_id: marketplace-live, method: computed-style, captured: "2026-07-13" }
|
|
19
65
|
tokens:
|
|
20
|
-
source:
|
|
21
|
-
extracted: "2026-
|
|
66
|
+
source: reconciled
|
|
67
|
+
extracted: "2026-07-13"
|
|
68
|
+
components_harvested: true
|
|
22
69
|
colors:
|
|
23
70
|
canvas: "#000000"
|
|
24
|
-
|
|
71
|
+
foreground: "#ffffff"
|
|
72
|
+
muted: "#999999"
|
|
73
|
+
marketplace-surface: "#242424"
|
|
25
74
|
accent: "#0099ff"
|
|
26
|
-
muted: "#a6a6a6"
|
|
27
|
-
surface-elevated: "#090909"
|
|
28
|
-
link-default: "#0000ee"
|
|
29
75
|
typography:
|
|
30
|
-
family: {
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
feature-heading: { size: 32, weight: 500, lineHeight: 1.13, tracking: -1, use: "Feature headings" }
|
|
35
|
-
card-title: { size: 24, weight: 400, lineHeight: 1.30, tracking: -0.01, use: "Card titles, Inter" }
|
|
36
|
-
feature-title: { size: 22, weight: 700, lineHeight: 1.20, tracking: -0.8, use: "Feature titles, Inter" }
|
|
37
|
-
body-lg: { size: 18, weight: 400, lineHeight: 1.30, tracking: -0.01, use: "Large body, Inter" }
|
|
38
|
-
body: { size: 15, weight: 400, lineHeight: 1.30, tracking: -0.01, use: "Standard body / nav, Inter" }
|
|
39
|
-
caption: { size: 14, weight: 400, lineHeight: 1.40, use: "Captions, Inter" }
|
|
40
|
-
label: { size: 13, weight: 500, lineHeight: 1.60, use: "Labels, Inter" }
|
|
41
|
-
code: { size: 10.4, weight: 400, lineHeight: 1.60, use: "Micro code, Azeret Mono" }
|
|
42
|
-
spacing: { xs: 4, sm: 8, md: 12, base: 15, lg: 20, xl: 30, section: 80 }
|
|
43
|
-
rounded: { sm: 5, md: 8, lg: 15, full: 9999 }
|
|
76
|
+
family: { ui: "Inter", display: "GT Walsheim Medium" }
|
|
77
|
+
public-body: { size: 14, weight: 400, lineHeight: 14, tracking: -0.01, use: "Observed public-home body text" }
|
|
78
|
+
spacing: { compact-x: 10, menu-inset: 5 }
|
|
79
|
+
rounded: { compact: 8, menu: 13, category-card: 20 }
|
|
44
80
|
shadow:
|
|
45
|
-
|
|
46
|
-
ring-dark: "rgb(9,9,9) 0px 0px 0px 2px"
|
|
47
|
-
floating: "rgba(255,255,255,0.1) 0px 0.5px 0px 0.5px, rgba(0,0,0,0.25) 0px 10px 30px"
|
|
81
|
+
marketplace-menu: "rgba(0,0,0,0.08) 0px 3px 6px 0px"
|
|
48
82
|
components:
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
button-ghost: { type: button, bg: "transparent", fg: "#ffffff", radius: "40px", padding: "10px 15px", use: "Tertiary text-only action, frosted on hover" }
|
|
52
|
-
input-dark: { type: input, bg: "#090909", fg: "#ffffff", radius: "8px", padding: "10px 12px", use: "Dark theme form input; focus #0099ff ring + blue glow" }
|
|
53
|
-
card-dark: { type: card, bg: "#090909", fg: "#ffffff", radius: "12px", padding: "24px", use: "Standard dark surface card with blue ring border" }
|
|
54
|
-
card-elevated: { type: card, bg: "#090909", fg: "#ffffff", radius: "12px", padding: "24px", use: "Elevated card, white top highlight + deep ambient shadow" }
|
|
55
|
-
badge-default: { type: badge, bg: "rgba(255,255,255,0.1)", fg: "#ffffff", radius: "9999px", padding: "4px 10px", font: "12px / 400", use: "Frosted pill badge on dark" }
|
|
56
|
-
components_harvested: true
|
|
83
|
+
marketplace-filter: { type: button, bg: "#242424", fg: "#ffffff", radius: "8px", padding: "0px 10px", font: "12px / 500", states: "expanded and menu-open captured on the Marketplace filter", use: "Marketplace filter trigger on the public community surface" }
|
|
84
|
+
marketplace-category: { type: card, bg: "#111111", fg: "#ffffff", radius: "20px", use: "Marketplace category card on the public community surface" }
|
|
57
85
|
---
|
|
58
86
|
|
|
59
|
-
#
|
|
87
|
+
# Framer — Design Reference
|
|
60
88
|
|
|
61
89
|
## 1. Visual Theme & Atmosphere
|
|
62
90
|
|
|
63
|
-
Framer
|
|
91
|
+
Framer is a platform for designing and publishing websites. Its current careers page describes the mission as building the best tool for designing and publishing incredible sites, while its public product copy positions AI-assisted website creation alongside design, collaboration, CMS, hosting, and publishing. The supplied 2026-07-13 evidence captures three public domains of that ecosystem: the main marketing site, a community Marketplace components listing, and pricing. Across those captures, the clearest recurring visual expression is an achromatic black-and-white public canvas with a small blue accent, compact rounded Marketplace controls, and a more editorial display face on the home page. This reference preserves those domains separately: it does not turn public marketing, community browsing chrome, or pricing into a claim about the authenticated editor, generated sites, or documentation UI.
|
|
64
92
|
|
|
65
|
-
|
|
93
|
+
- **Public canvas:** `#000000` is observed as the home and pricing page background; `#ffffff` is the recurring foreground.
|
|
94
|
+
- **Community layer:** the Marketplace components page introduces `#111111` and `#242424` surfaces, 8px compact controls, 20px category cards, and 13px menu panels.
|
|
95
|
+
- **Blue as local evidence:** `#0099ff` is observed in Marketplace and pricing controls and is also published by Framer as “Framer Blue”; it is not promoted as a universal product-state color.
|
|
96
|
+
- **Official brand assets:** Framer separately publishes Black, White, Framer Blue (`#0099FF`), and Framer Deep Blue (`#0055FF`) for marks. Brand-asset colors are not automatically public-web CSS tokens.
|
|
66
97
|
|
|
67
|
-
|
|
98
|
+
## 2. Color Palette & Roles
|
|
68
99
|
|
|
69
|
-
|
|
70
|
-
- Pure black (`#000000`) void canvas — absolute dark, not warm or gray-tinted
|
|
71
|
-
- GT Walsheim display font with extreme negative letter-spacing (-5.5px at 110px)
|
|
72
|
-
- Framer Blue (`#0099ff`) as the sole accent color — cold, electric, precise
|
|
73
|
-
- Pill-shaped buttons (40px–100px radius) — no sharp corners on interactive elements
|
|
74
|
-
- Product screenshots as hero art — the tool IS the marketing
|
|
75
|
-
- Frosted glass button variants using `rgba(255, 255, 255, 0.1)` on dark surfaces
|
|
76
|
-
- Extensive OpenType feature usage across Inter for refined micro-typography
|
|
100
|
+
### Observed public-web roles
|
|
77
101
|
|
|
78
|
-
|
|
102
|
+
- **Black canvas** (`#000000`): computed background on the captured home and pricing pages.
|
|
103
|
+
- **White foreground** (`#ffffff`): repeated visible text and border value across all three captured surfaces.
|
|
104
|
+
- **Muted label gray** (`#999999`): repeated text and border value on home and Marketplace; it is a lower-emphasis public-web value, not an accessibility-state definition.
|
|
105
|
+
- **Marketplace mid surface** (`#242424`): filter-trigger and open-menu panel background on the Marketplace components page.
|
|
106
|
+
- **Marketplace card surface** (`#111111`): category-card background on the Marketplace components page.
|
|
107
|
+
- **Framer Blue** (`#0099ff`): observed Marketplace/pricing background and home text/border value; official brand guidance also lists the same color.
|
|
79
108
|
|
|
80
|
-
|
|
81
|
-
- **Pure Black** (`#000000`): Primary background, the void canvas that defines Framer's dark-first identity
|
|
82
|
-
- **Pure White** (`#ffffff`): Primary text color on dark surfaces, button text on accent backgrounds
|
|
83
|
-
- **Framer Blue** (`#0099ff`): Primary accent color — links, borders, ring shadows, interactive highlights
|
|
109
|
+
`#0055FF` remains an official brand-asset color from the brand guidelines, but it was not a measured token in the supplied live samples. Other isolated colors in the raw bundle are route- or content-local and are not raised into a system palette.
|
|
84
110
|
|
|
85
|
-
|
|
86
|
-
- **Muted Silver** (`#a6a6a6`): Secondary text, subdued labels, dimmed descriptions on dark surfaces
|
|
87
|
-
- **Near Black** (`#090909`): Elevated dark surface, shadow ring color for subtle depth separation
|
|
111
|
+
## 3. Typography Rules
|
|
88
112
|
|
|
89
|
-
###
|
|
90
|
-
- **Void Black** (`#000000`): Page background, primary canvas
|
|
91
|
-
- **Frosted White** (`rgba(255, 255, 255, 0.1)`): Translucent button backgrounds, glass-effect surfaces on dark
|
|
92
|
-
- **Subtle White** (`rgba(255, 255, 255, 0.5)`): Slightly more opaque frosted elements for hover states
|
|
113
|
+
### Evidence classes
|
|
93
114
|
|
|
94
|
-
|
|
95
|
-
- **
|
|
96
|
-
- **
|
|
97
|
-
- **
|
|
115
|
+
- **Live computed public-web use:** `Inter` is loaded/high with 512 visible uses and two Framer-hosted Inter Variable WOFF2 source URLs. `Inter Variable` is separately loaded/high with 392 visible uses. The Marketplace’s `inter, "inter Fallback"` computed stack is therefore represented by the canonical UI family `Inter`, rather than by a fallback name.
|
|
116
|
+
- **Live computed display use:** `GT Walsheim Medium` is loaded/high with 11 visible heading uses; the collector reports FontFaceSet corroboration but no source URL. It is recorded as the public-home display family, not as a reusable distributed asset.
|
|
117
|
+
- **Live local monospace use:** `Input Mono Regular` and `Input Mono Bold` are loaded/high in a small number of visible public samples. They are not made general UI or code tokens because the capture does not establish a component-level role. Input’s official licence says published/distributed use needs the appropriate licence.
|
|
118
|
+
- **Source-backed local mono:** `jetBrainsMono` has one loaded visible use and two Framer-hosted source URLs. JetBrains Mono’s official project is OFL-1.1; this license context does not grant use of Framer-hosted files.
|
|
119
|
+
- **Declared-only:** Azeret Mono, Chillax, EB Garamond, Geist, additional GT Walsheim faces, numerous Inter aliases/placeholders, and other declared faces have zero visible uses in this bundle. They remain declared-only and are not UI-family tokens.
|
|
120
|
+
- **Unobserved domains:** no authenticated Framer editor/product surface or docs chrome font capture was supplied. No web family is substituted into either domain.
|
|
98
121
|
|
|
99
|
-
###
|
|
100
|
-
- **Framer Blue** (`#0099ff`): Links, interactive borders, focus rings
|
|
101
|
-
- **Blue Glow** (`rgba(0, 153, 255, 0.15)`): Focus ring shadow, subtle blue halo around interactive elements
|
|
102
|
-
- **Default Link Blue** (`#0000ee`): Standard browser link color (used sparingly in content areas)
|
|
122
|
+
### Measured public hierarchy
|
|
103
123
|
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
124
|
+
| Role | Family | Size | Weight | Line height | Tracking | Evidence boundary |
|
|
125
|
+
|---|---|---:|---:|---:|---:|---|
|
|
126
|
+
| Public home body | Inter Variable | 14px | 400 | 14px | -0.01px | `home::p` |
|
|
127
|
+
| Public home display heading | GT Walsheim Medium | 54px | 500 | 54px | -2.16px | captured `home::h1` |
|
|
128
|
+
| Public home section heading | GT Walsheim Medium | 44px | 500 | 48.4px | -1.76px | captured `home::h2` |
|
|
129
|
+
| Marketplace compact control | Inter | 12px | 500 | 12px | normal | `surface-2::[data-omd-capture="26"]` |
|
|
130
|
+
| Marketplace category label | Inter | 13px | 600 | 18.2px | normal | `surface-2::span.category-card-module-scss-module__VfU1Xq__name` |
|
|
107
131
|
|
|
108
|
-
##
|
|
132
|
+
## 4. Components
|
|
109
133
|
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
- **Accent**: `Mona Sans` — GitHub's open-source font, used for select elements at ultra-light weight (100)
|
|
114
|
-
- **Monospace**: `Azeret Mono` — companion mono for code and technical labels
|
|
115
|
-
- **Rounded**: `Open Runde` — small rounded companion font for micro-labels
|
|
116
|
-
|
|
117
|
-
### Hierarchy
|
|
118
|
-
|
|
119
|
-
| Role | Font | Size | Weight | Line Height | Letter Spacing | Notes |
|
|
120
|
-
|------|------|------|--------|-------------|----------------|-------|
|
|
121
|
-
| Display Hero | GT Walsheim Framer Medium | 110px | 500 | 0.85 | -5.5px | Extreme negative tracking, compressed impact |
|
|
122
|
-
| Section Display | GT Walsheim Medium | 85px | 500 | 0.95 | -4.25px | OpenType: ss02, tnum |
|
|
123
|
-
| Section Heading | GT Walsheim Medium | 62px | 500 | 1.00 | -3.1px | OpenType: ss02 |
|
|
124
|
-
| Feature Heading | GT Walsheim Medium | 32px | 500 | 1.13 | -1px | Tightest of the smaller headings |
|
|
125
|
-
| Accent Display | Mona Sans | 61.5px | 100 | 1.00 | -3.1px | Ultra-light weight, ethereal |
|
|
126
|
-
| Card Title | Inter Variable | 24px | 400 | 1.30 | -0.01px | OpenType: cv01, cv05, cv09, cv11, ss03, ss07 |
|
|
127
|
-
| Feature Title | Inter | 22px | 700 | 1.20 | -0.8px | OpenType: cv05 |
|
|
128
|
-
| Sub-heading | Inter | 20px | 600 | 1.20 | -0.8px | OpenType: cv01, cv09 |
|
|
129
|
-
| Body Large | Inter Variable | 18px | 400 | 1.30 | -0.01px | OpenType: cv01, cv05, cv09, cv11, ss03, ss07 |
|
|
130
|
-
| Body | Inter Variable | 15px | 400 | 1.30 | -0.01px | OpenType: cv11 |
|
|
131
|
-
| Nav/UI | Inter Variable | 15px | 400 | 1.00 | -0.15px | OpenType: cv06, cv11, dlig, ss03 |
|
|
132
|
-
| Body Readable | Inter Framer Regular | 14px | 400 | 1.60 | normal | Long-form body text |
|
|
133
|
-
| Caption | Inter Variable | 14px | 400 | 1.40 | normal | OpenType: cv01, cv06, cv09, cv11, ss03, ss07 |
|
|
134
|
-
| Label | Inter | 13px | 500 | 1.60 | normal | OpenType: cv06, cv11, ss03 |
|
|
135
|
-
| Small Caption | Inter Variable | 12px | 400 | 1.40 | normal | OpenType: cv01, cv06, cv09, cv11, ss03, ss07 |
|
|
136
|
-
| Micro Code | Azeret Mono | 10.4px | 400 | 1.60 | normal | OpenType: cv06, cv11, ss03 |
|
|
137
|
-
| Badge | Open Runde | 9px | 600 | 1.11 | normal | OpenType: cv01, cv09 |
|
|
138
|
-
| Micro Uppercase | Inter Variable | 7px | 400 | 1.00 | 0.21px | uppercase transform |
|
|
139
|
-
|
|
140
|
-
### Principles
|
|
141
|
-
- **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
|
|
142
|
-
- **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
|
|
143
|
-
- **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
|
|
144
|
-
- **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
|
|
145
|
-
|
|
146
|
-
## 4. Component Stylings
|
|
147
|
-
|
|
148
|
-
### Buttons
|
|
149
|
-
|
|
150
|
-
**Solid White Pill**
|
|
151
|
-
- Background: `#ffffff`
|
|
152
|
-
- Text: `#000000`
|
|
153
|
-
- Radius: 100px (pill)
|
|
154
|
-
- Padding: 10px 15px
|
|
155
|
-
- Font: 15px / 400 / Inter
|
|
156
|
-
- Use: Primary CTA — clean, high-contrast on dark
|
|
157
|
-
|
|
158
|
-
**Frosted Pill**
|
|
159
|
-
- Background: `rgba(255, 255, 255, 0.1)`
|
|
160
|
-
- Text: `#ffffff`
|
|
161
|
-
- Radius: 40px
|
|
162
|
-
- Padding: 10px 15px
|
|
163
|
-
- Font: 15px / 400 / Inter
|
|
164
|
-
- Use: Glass-effect button on dark surfaces — translucent, ambient
|
|
134
|
+
All variants below are selector-backed observations from public surfaces. The capture records three interaction expansions: two Marketplace menus and one home form-error sample. It does not capture an authenticated editor, documentation chrome, hover, pressed, focus, modal, or product-toast contract beyond the exact rows called out below.
|
|
135
|
+
|
|
136
|
+
### Marketplace action
|
|
165
137
|
|
|
166
|
-
**
|
|
167
|
-
- Background:
|
|
138
|
+
**Filter trigger, menu-open capture**
|
|
139
|
+
- Background: `#242424`
|
|
168
140
|
- Text: `#ffffff`
|
|
169
|
-
-
|
|
170
|
-
-
|
|
171
|
-
-
|
|
172
|
-
-
|
|
141
|
+
- Border: `1px solid transparent`
|
|
142
|
+
- Radius: `8px`
|
|
143
|
+
- Padding: `0px 10px`
|
|
144
|
+
- Font: `12px / 500 / Inter`
|
|
145
|
+
- Use: public Marketplace components filter trigger; `surface-2::[data-omd-capture="26"]`, `aria-haspopup="menu"`, captured with `expanded` and `menu-open`
|
|
146
|
+
|
|
147
|
+
**Accent action**
|
|
148
|
+
- Background: `#0099ff`
|
|
149
|
+
- Text: `#ffffff`
|
|
150
|
+
- Border: `1px solid transparent`
|
|
151
|
+
- Radius: `8px`
|
|
152
|
+
- Padding: `0px 10px`
|
|
153
|
+
- Font: `12px / 600 / Inter`
|
|
154
|
+
- Use: public Marketplace action; `surface-2::[data-omd-capture="15"]`
|
|
173
155
|
|
|
174
|
-
###
|
|
156
|
+
### Marketplace menu
|
|
175
157
|
|
|
176
|
-
**
|
|
177
|
-
- Background: `#
|
|
158
|
+
**Open panel**
|
|
159
|
+
- Background: `#242424`
|
|
160
|
+
- Text: `#ffffff`
|
|
161
|
+
- Border: `1px solid #333333`
|
|
162
|
+
- Radius: `13px`
|
|
163
|
+
- Padding: `5px`
|
|
164
|
+
- Font: `12px / 400 / Inter`
|
|
165
|
+
- Shadow: `rgba(0, 0, 0, 0.08) 0px 3px 6px 0px`
|
|
166
|
+
- Use: expanded public Marketplace menu; `surface-2::[data-omd-interaction-capture="menu-0-0"]`
|
|
167
|
+
|
|
168
|
+
**Unchecked menu option**
|
|
178
169
|
- Text: `#ffffff`
|
|
179
|
-
-
|
|
180
|
-
-
|
|
181
|
-
-
|
|
182
|
-
-
|
|
183
|
-
- Placeholder: `rgba(255, 255, 255, 0.4)`
|
|
184
|
-
- Use: Form input on dark theme (marketing site has minimal forms)
|
|
170
|
+
- Radius: `8px`
|
|
171
|
+
- Padding: `0px 10px 0px 0px`
|
|
172
|
+
- Font: `13px / 500 / Inter`
|
|
173
|
+
- Use: `role="menuitemcheckbox"`, `aria-checked="false"`, captured only in the expanded Marketplace menu at `surface-2::[data-omd-interaction-capture="menu-0-2"]`
|
|
185
174
|
|
|
186
|
-
###
|
|
175
|
+
### Marketplace category card
|
|
187
176
|
|
|
188
|
-
**
|
|
189
|
-
- Background: `#
|
|
177
|
+
**Default**
|
|
178
|
+
- Background: `#111111`
|
|
190
179
|
- Text: `#ffffff`
|
|
191
|
-
- Radius:
|
|
192
|
-
-
|
|
193
|
-
-
|
|
194
|
-
- Use: Standard dark surface card with blue ring border
|
|
180
|
+
- Radius: `20px`
|
|
181
|
+
- Font: `12px / 500 / Inter`
|
|
182
|
+
- Use: public Marketplace category-card root; `surface-2::[data-omd-capture="21"]`
|
|
195
183
|
|
|
196
|
-
|
|
197
|
-
- Background: `#090909`
|
|
198
|
-
- Text: `#ffffff`
|
|
199
|
-
- Radius: 12px
|
|
200
|
-
- Padding: 24px
|
|
201
|
-
- Shadow: `rgba(255, 255, 255, 0.1) 0px 0.5px 0px 0.5px, rgba(0, 0, 0, 0.25) 0px 10px 30px`
|
|
202
|
-
- Use: Elevated card — subtle top highlight + deep ambient shadow
|
|
184
|
+
### Marketplace tab
|
|
203
185
|
|
|
204
|
-
**
|
|
205
|
-
-
|
|
206
|
-
- Radius:
|
|
207
|
-
- Padding: 0px
|
|
208
|
-
-
|
|
186
|
+
**Disabled**
|
|
187
|
+
- Text: `#666666`
|
|
188
|
+
- Radius: `8px`
|
|
189
|
+
- Padding: `0px 10px`
|
|
190
|
+
- Font: `12px / 500 / Inter`
|
|
191
|
+
- Use: disabled, coming-soon public Marketplace tab; `surface-2::[data-omd-capture="13"]`
|
|
209
192
|
|
|
210
|
-
###
|
|
193
|
+
### Home form field
|
|
211
194
|
|
|
212
|
-
**
|
|
213
|
-
-
|
|
214
|
-
-
|
|
215
|
-
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
- **Nav links**: Inter at 15px, weight 400, white text with subtle hover opacity change
|
|
223
|
-
- **CTA button**: Pill-shaped, white or frosted, positioned at right end of nav
|
|
224
|
-
- **Mobile**: Collapses to hamburger menu, maintains dark theme
|
|
225
|
-
- **Sticky behavior**: Nav remains fixed at top on scroll
|
|
226
|
-
|
|
227
|
-
### Image Treatment
|
|
228
|
-
- **Product screenshots as hero art**: Full-width embedded UI screenshots with rounded corners (8px–12px)
|
|
229
|
-
- **Dark-on-dark composition**: Screenshots placed on black backgrounds with subtle shadow for depth separation
|
|
230
|
-
- **16:9 and custom aspect ratios**: Product demos fill their containers
|
|
231
|
-
- **No decorative imagery**: All images are functional — showing the tool, the output, or the workflow
|
|
232
|
-
|
|
233
|
-
### Trust & Social Proof
|
|
234
|
-
- Customer logos and testimonials in muted gray on dark surfaces
|
|
235
|
-
- Minimal ornamentation — the product screenshots serve as the trust signal
|
|
195
|
+
**Error capture**
|
|
196
|
+
- Text: `#dee6ff`
|
|
197
|
+
- Font: `14px / 500 / Inter`
|
|
198
|
+
- Use: home textarea error sample; `home::[data-omd-interaction-capture="form-error-0-0"]`. The collector records the error state but does not supply a reusable field shell, label, or transition contract.
|
|
199
|
+
|
|
200
|
+
---
|
|
201
|
+
**Verified:** 2026-07-13
|
|
202
|
+
**Tier 1 sources:** `https://www.framer.com/` (public marketing), `https://www.framer.com/community/marketplace/components/` (public community Marketplace), `https://www.framer.com/pricing` (public pricing), `https://www.framer.com/brand?page=1` (official brand assets), `https://www.framer.com/careers/` and `https://www.framer.com/blog/framer-next-generation-of-designers/` (official context), `https://github.com/rsms/inter/blob/master/LICENSE.txt`, `https://input.djr.com/license/`, and `https://github.com/jetbrains/jetbrainsmono` (font/license context)
|
|
203
|
+
**Tier 2 sources:** `https://getdesign.md/framer` (one independent design record; broad direction only), `https://styles.refero.design/style/242db326-a6f3-482a-b12e-5e7f8af94981` and `https://styles.refero.design/style/d417b42f-824d-45ba-a02e-cbef3b8ea0d8` (independent generated records; no generated-only values used)
|
|
204
|
+
**Conflicts unresolved:** none
|
|
236
205
|
|
|
237
206
|
## 5. Layout Principles
|
|
238
207
|
|
|
239
|
-
|
|
240
|
-
-
|
|
241
|
-
-
|
|
242
|
-
-
|
|
243
|
-
- **Card padding**: 15px–30px internal padding
|
|
244
|
-
- **Component gaps**: 8px–20px between related elements
|
|
245
|
-
|
|
246
|
-
### Grid & Container
|
|
247
|
-
- **Max width**: ~1200px container, centered
|
|
248
|
-
- **Column patterns**: Full-width hero, 2-column feature sections, single-column product showcases
|
|
249
|
-
- **Asymmetric layouts**: Feature sections often pair text (40%) with screenshot (60%)
|
|
250
|
-
|
|
251
|
-
### Whitespace Philosophy
|
|
252
|
-
- **Breathe through darkness**: Generous vertical spacing between sections — the black background means whitespace manifests as void, creating dramatic pauses between content blocks
|
|
253
|
-
- **Dense within, spacious between**: Individual components are tightly composed (tight line-heights, compressed text) but float in generous surrounding space
|
|
254
|
-
- **Product-first density**: Screenshot areas are allowed to be dense and information-rich, contrasting with the sparse marketing text
|
|
255
|
-
|
|
256
|
-
### Border Radius Scale
|
|
257
|
-
- **1px**: Micro-elements, nearly squared precision edges
|
|
258
|
-
- **5px–7px**: Small UI elements, image thumbnails — subtly softened
|
|
259
|
-
- **8px**: Standard component radius — code blocks, buttons, interactive elements
|
|
260
|
-
- **10px–12px**: Cards, product screenshots — comfortably rounded
|
|
261
|
-
- **15px–20px**: Large containers, feature cards — generously rounded
|
|
262
|
-
- **30px–40px**: Navigation pills, pagination — noticeably rounded
|
|
263
|
-
- **100px**: Full pill shape — primary CTAs, tag elements
|
|
208
|
+
- The supplied evidence is desktop-only (`1440×900`). It supports local spacing observations, not a responsive grid, breakpoint, container-width, or editor-layout claim.
|
|
209
|
+
- Marketplace compact filter and tab controls use `0px 10px` padding; the open menu uses 5px inset padding.
|
|
210
|
+
- Category-card text has 15px padding in the captured Marketplace DOM. This is a card-local observation, not a global spacing scale.
|
|
211
|
+
- The raw spacing aggregation also repeats 5px, 10px, 14px, 15px, and 40px values. Without semantic selector coverage for a universal scale, they remain aggregate evidence rather than prescribed tokens.
|
|
264
212
|
|
|
265
213
|
## 6. Depth & Elevation
|
|
266
214
|
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
| Level 1 (Ring) | `rgba(0, 153, 255, 0.15) 0px 0px 0px 1px` | Card borders, interactive element outlines — Framer Blue glow ring |
|
|
271
|
-
| Level 2 (Contained) | `rgb(9, 9, 9) 0px 0px 0px 2px` | Near-black ring for subtle containment on dark surfaces |
|
|
272
|
-
| 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 |
|
|
273
|
-
|
|
274
|
-
### Shadow Philosophy
|
|
275
|
-
Framer's elevation system is inverted from traditional light-theme designs. Instead of darker shadows on light backgrounds, Framer uses:
|
|
276
|
-
- **Blue-tinted ring shadows** at very low opacity (0.15) for containment — a signature move that subtly brands every bordered element
|
|
277
|
-
- **White edge highlights** (0.5px) on the top edge of elevated elements — simulating light hitting the top surface
|
|
278
|
-
- **Deep ambient shadows** for true floating elements — `rgba(0, 0, 0, 0.25)` at large spread (30px)
|
|
279
|
-
|
|
280
|
-
### Decorative Depth
|
|
281
|
-
- **Blue glow auras**: Subtle Framer Blue (`#0099ff`) radial gradients behind key interactive areas
|
|
282
|
-
- **No background blur/glassmorphism**: Despite the frosted button effect, there's no heavy glass blur usage — the translucency is achieved through simple rgba opacity
|
|
215
|
+
- **Marketplace open menu:** the only selector-backed elevated panel is `surface-2::[data-omd-interaction-capture="menu-0-0"]`, with `rgba(0,0,0,0.08) 0px 3px 6px 0px`.
|
|
216
|
+
- **Home utility controls:** individual home buttons `data-omd-capture="31"` through `"33"` have `rgba(0,0,0,0.2) 0px 2px 6px 0px`; their semantic role is not identified, so the value is not a system elevation level.
|
|
217
|
+
- No general blue glow, card-shadow hierarchy, or authenticated-product elevation rule is asserted.
|
|
283
218
|
|
|
284
219
|
## 7. Do's and Don'ts
|
|
285
220
|
|
|
286
221
|
### Do
|
|
287
|
-
|
|
288
|
-
-
|
|
289
|
-
-
|
|
290
|
-
- Use
|
|
291
|
-
-
|
|
292
|
-
- Maintain GT Walsheim at weight 500 only — the medium weight IS the brand
|
|
293
|
-
- Use extensive OpenType features on Inter text (cv01, cv05, cv09, cv11, ss03, ss07)
|
|
294
|
-
- Let product screenshots be the visual centerpiece — the tool markets itself
|
|
295
|
-
- Apply blue ring shadows (`rgba(0, 153, 255, 0.15) 0px 0px 0px 1px`) for card containment
|
|
222
|
+
|
|
223
|
+
- Keep generated work scoped to the observed public domain: black/white marketing or the separate dark Marketplace surface.
|
|
224
|
+
- Use the observed Marketplace compact geometry—8px controls, 13px menu panels, 20px category cards—only when recreating the corresponding public patterns.
|
|
225
|
+
- Use Inter for UI/body and GT Walsheim Medium only for public display contexts when the font licensing and asset availability are appropriate.
|
|
226
|
+
- Treat `#0099ff` as a documented public/brand accent, with route-level component provenance rather than a universal semantic-state guarantee.
|
|
296
227
|
|
|
297
228
|
### Don't
|
|
298
|
-
|
|
299
|
-
-
|
|
300
|
-
-
|
|
301
|
-
-
|
|
302
|
-
-
|
|
303
|
-
- Use positive letter-spacing on headlines — everything is compressed, negative tracking
|
|
304
|
-
- Create heavy drop shadows — depth is communicated through subtle rings and minimal ambients
|
|
305
|
-
- Place light/white backgrounds behind content sections — the void is sacred
|
|
306
|
-
- Use serif or display-weight fonts — the system is geometric sans-serif only
|
|
229
|
+
|
|
230
|
+
- Do not infer Framer editor, publishing, CMS, collaboration, or docs components from these public captures.
|
|
231
|
+
- Do not turn declared-only faces into live UI tokens or substitute a system font as an unavailable family.
|
|
232
|
+
- Do not claim hover, pressed, focus, responsive, modal, or motion variants that the collector did not capture.
|
|
233
|
+
- Do not treat official brand-asset colors or third-party font licences as permission to reuse Framer-hosted assets.
|
|
307
234
|
|
|
308
235
|
## 8. Responsive Behavior
|
|
309
236
|
|
|
310
|
-
|
|
311
|
-
| Name | Width | Key Changes |
|
|
312
|
-
|------|-------|-------------|
|
|
313
|
-
| Mobile | <809px | Single column, stacked feature sections, reduced hero text (62px→40px), hamburger nav |
|
|
314
|
-
| Tablet | 809px–1199px | 2-column features begin, nav links partially visible, screenshots scale down |
|
|
315
|
-
| Desktop | >1199px | Full layout, expanded nav with all links + CTA, 110px display hero, side-by-side features |
|
|
316
|
-
|
|
317
|
-
### Touch Targets
|
|
318
|
-
- Pill buttons: minimum 40px height with 10px vertical padding — exceeds 44px WCAG minimum
|
|
319
|
-
- Nav links: 15px text with generous padding for touch accessibility
|
|
320
|
-
- Mobile CTA buttons: Full-width pills on mobile for easy thumb reach
|
|
321
|
-
|
|
322
|
-
### Collapsing Strategy
|
|
323
|
-
- **Navigation**: Full horizontal nav → hamburger menu at mobile breakpoint
|
|
324
|
-
- **Hero text**: 110px display → 85px → 62px → ~40px across breakpoints, maintaining extreme negative tracking proportionally
|
|
325
|
-
- **Feature sections**: Side-by-side (text + screenshot) → stacked vertically on mobile
|
|
326
|
-
- **Product screenshots**: Scale responsively within containers, maintaining aspect ratios
|
|
327
|
-
- **Section spacing**: Reduces proportionally — 120px desktop → 60px mobile
|
|
328
|
-
|
|
329
|
-
### Image Behavior
|
|
330
|
-
- Product screenshots are responsive, scaling within their container boundaries
|
|
331
|
-
- No art direction changes — same crops across breakpoints
|
|
332
|
-
- Dark background ensures screenshots maintain visual impact at any size
|
|
333
|
-
- Screenshots lazy-load as user scrolls into view
|
|
237
|
+
Only a `1440×900` capture was supplied. The public pages may be responsive, but this packet does not measure a breakpoint, mobile navigation, touch target, image crop, or a responsive state transition. Those fields remain unresolved rather than being extrapolated from the desktop DOM.
|
|
334
238
|
|
|
335
239
|
## 9. Agent Prompt Guide
|
|
336
240
|
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
-
|
|
340
|
-
-
|
|
341
|
-
-
|
|
342
|
-
- Frosted Surface: Translucent White (`rgba(255, 255, 255, 0.1)`)
|
|
343
|
-
- Elevation Ring: Blue Glow (`rgba(0, 153, 255, 0.15)`)
|
|
344
|
-
|
|
345
|
-
### Example Component Prompts
|
|
346
|
-
- "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"
|
|
347
|
-
- "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"
|
|
348
|
-
- "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"
|
|
349
|
-
- "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)"
|
|
350
|
-
- "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"
|
|
351
|
-
|
|
352
|
-
### Iteration Guide
|
|
353
|
-
When refining existing screens generated with this design system:
|
|
354
|
-
1. Focus on ONE component at a time — the dark canvas makes each element precious
|
|
355
|
-
2. Always verify letter-spacing on GT Walsheim headings — the extreme negative tracking is non-negotiable
|
|
356
|
-
3. Check that Framer Blue appears ONLY on interactive elements — never as decorative background or text color for non-links
|
|
357
|
-
4. Ensure all buttons are pill-shaped — any squared corner immediately breaks the Framer aesthetic
|
|
358
|
-
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
|
|
241
|
+
Use this reference as a public-web direction, not an app-kit specification:
|
|
242
|
+
|
|
243
|
+
- “Create a public marketing section on `#000000` with `#ffffff` foreground, Inter UI text, and a `#0099ff` accent only where a selector-backed public component warrants it.”
|
|
244
|
+
- “For a Marketplace-like filter, use `#242424`, white 12px/500 Inter text, 8px radius, and `0px 10px` padding; pair it only with the observed 13px-radius menu panel if an open-menu surface is needed.”
|
|
245
|
+
- “For the public home’s editorial hierarchy, use GT Walsheim Medium only when its licensed asset is available; the captured examples are 54px/500 and 44px/500, not an unbounded display scale.”
|
|
359
246
|
|
|
360
247
|
## 10. Voice & Tone
|
|
361
248
|
|
|
362
|
-
Framer
|
|
249
|
+
Framer’s first-party careers page leads with “Make the web more creative” and describes a mission to build the best tool for designing and publishing incredible sites. The product blog says the enduring mission is to turn ideas into stunning websites quickly. That supports a direct, maker-facing public voice; it does not establish editor error copy or a complete product-content style guide.
|
|
363
250
|
|
|
364
|
-
| Context |
|
|
251
|
+
| Context | Supported direction |
|
|
365
252
|
|---|---|
|
|
366
|
-
|
|
|
367
|
-
|
|
|
368
|
-
|
|
|
369
|
-
| Error (publishing) | Specific. "Domain SSL provisioning. Try again in 5 minutes." |
|
|
370
|
-
|
|
371
|
-
**Voice samples**
|
|
372
|
-
- Marketing tagline: *"Create a professional website, free."* <!-- verified: framer.com homepage 2026-05 -->
|
|
373
|
-
|
|
374
|
-
**Forbidden phrases.** "Revolutionary website builder", "magic". Aggressive "compete with Webflow" framing.
|
|
253
|
+
| Public headline | Short outcome-led statement, as in “Make the web more creative.” |
|
|
254
|
+
| Public CTA | Direct account/start action; captured pages expose “Sign up.” |
|
|
255
|
+
| Community | Label-led browsing and filters on the Marketplace components surface. |
|
|
375
256
|
|
|
376
257
|
## 11. Brand Narrative
|
|
377
258
|
|
|
378
|
-
Framer
|
|
259
|
+
Framer’s present public framing is a web-design and publishing platform: the careers page ties the company to the future of the web, and the product blog describes the continuing goal as moving from an idea to a polished website quickly. Its public navigation also spans design, collaboration, CMS, hosting, performance, SEO, conversion, and publishing. The visually distinctive expression in this packet comes from the current public surfaces—not a claim that every Framer product surface uses the same components or palette.
|
|
379
260
|
|
|
380
261
|
## 12. Principles
|
|
381
262
|
|
|
382
|
-
1. **
|
|
383
|
-
2. **
|
|
384
|
-
3. **
|
|
385
|
-
4. **
|
|
386
|
-
5. **Live publish.** *UI implication:* "Publish" CTA shows live preview URL + redeploys without page reload.
|
|
263
|
+
1. **Make the publishing outcome legible.** *UI implication:* public copy should foreground the site-building/publishing task rather than inventing technical workflow claims.
|
|
264
|
+
2. **Keep brand assets recognizable.** *UI implication:* follow the official guidance not to alter, recolor, distort, or create substitute Framer marks.
|
|
265
|
+
3. **Preserve source-domain boundaries.** *UI implication:* use public marketing and Marketplace evidence only for those surfaces; do not synthesize editor or docs patterns.
|
|
266
|
+
4. **Prefer measured compactness over generic pills.** *UI implication:* the supported compact controls are 8px-rounded Marketplace controls, not a site-wide full-pill rule.
|
|
387
267
|
|
|
388
268
|
## 13. Personas
|
|
389
269
|
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
**Sofia Russo, 32, Milan.** Indie designer shipping client marketing sites. Replaced Webflow workflow with Framer for the better animation defaults.
|
|
270
|
+
These are audience archetypes derived from Framer’s public positioning, not synthetic test users or claims about private product behavior.
|
|
393
271
|
|
|
394
|
-
**
|
|
395
|
-
|
|
396
|
-
**
|
|
272
|
+
- **Website creator:** uses the public design-and-publish proposition and may enter through marketing or templates.
|
|
273
|
+
- **Community browser:** explores the public Marketplace components surface through category cards, tabs, and filters.
|
|
274
|
+
- **Developer/documentation reader:** encounters a separately structured developer/docs domain; this packet does not use its chrome as visual-token evidence.
|
|
397
275
|
|
|
398
276
|
## 14. States
|
|
399
277
|
|
|
400
|
-
| State |
|
|
278
|
+
| State | Evidence boundary |
|
|
401
279
|
|---|---|
|
|
402
|
-
|
|
|
403
|
-
|
|
|
404
|
-
|
|
|
405
|
-
|
|
|
406
|
-
|
|
|
407
|
-
| **Error (CMS)** | Field-level inline message |
|
|
408
|
-
| **Success (published)** | Spring-bounce confirmation + URL copy |
|
|
409
|
-
| **Success (asset uploaded)** | Inline preview replaces placeholder |
|
|
410
|
-
| **Skeleton (project list)** | Frosted glass placeholders |
|
|
411
|
-
| **Disabled (free plan limit)** | 0.5 opacity + upgrade link |
|
|
412
|
-
| **Loading (collaborator typing)** | Avatar + cursor indicator on canvas |
|
|
280
|
+
| Form error | Home textarea captured in `error` state with `#dee6ff` text; field shell and message copy are not captured. |
|
|
281
|
+
| Menu open | Two Marketplace menu expansions are captured, including one `#242424` panel and unchecked menu option. |
|
|
282
|
+
| Disabled tab | One Marketplace coming-soon tab is disabled with `#666666` text and 8px radius. |
|
|
283
|
+
| Toast viewport | A Marketplace toast viewport element is present, but no visible message, lifecycle, or style contract is captured. |
|
|
284
|
+
| Empty/loading/success/product failure | Not captured; no editor or authenticated-product state recipe is asserted. |
|
|
413
285
|
|
|
414
286
|
## 15. Motion & Easing
|
|
415
287
|
|
|
416
|
-
|
|
417
|
-
|---|---|---|
|
|
418
|
-
| `motion-instant` | 0ms | Selection |
|
|
419
|
-
| `motion-fast` | 150ms | Hover |
|
|
420
|
-
| `motion-spring` | variable | Click → action commits with spring physics |
|
|
421
|
-
| `motion-standard` | 250ms | Modal, panel |
|
|
422
|
-
|
|
423
|
-
Easings: spring physics is the signature. **Spring on every commit** — buttons, modals, panels. `prefers-reduced-motion: reduce` collapses spring to opacity-only fade.
|
|
424
|
-
|
|
425
|
-
---
|
|
426
|
-
|
|
427
|
-
**Verified:** 2026-05-08 (omd:migrate run 25 — Apple-tier)
|
|
428
|
-
**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).
|
|
429
|
-
**Tier 2 sources:** styles.refero.design / getdesign.md — no record.
|
|
430
|
-
**Tier 2 (Philosophy/founders):** Tracxn, Silicon Canals, TechCrunch (2025-08 $2B), Sifted, I amsterdam, Crunchbase.
|
|
431
|
-
**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.
|
|
288
|
+
The capture records structural menu and form-error expansions but supplies no measured duration, easing, transition, or reduced-motion behavior. Framer’s historical association with motion does not license a motion-token claim for the currently captured public surfaces; motion values remain unresolved.
|