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,158 @@
1
+ ---
2
+ id: hahow
3
+ name: "Hahow"
4
+ country: TW
5
+ category: education
6
+ homepage: "https://hahow.in"
7
+ primary_color: "#00CCB4"
8
+ logo:
9
+ type: favicon
10
+ slug: "https://www.google.com/s2/favicons?domain=hahow.in&sz=128"
11
+ verified: "2026-06-01"
12
+ omd: "0.1"
13
+ ds:
14
+ name: "hahow-design"
15
+ url: "https://github.com/hahow/hahow-design"
16
+ type: system
17
+ description: "Hahow's open-source design-system theme — Primary/Secondary token scales (Primary 500 #00ccb4)."
18
+ ---
19
+
20
+ # Design System Inspiration of Hahow
21
+
22
+ ## 1. Visual Theme & Atmosphere
23
+
24
+ Hahow (好學校) is Taiwan's leading EdTech course marketplace, and its interface carries the warmth of a place that wants you to keep learning rather than the polish of a place that wants to close a sale. The atmosphere is friendly, approachable, and unmistakably human: a soft gray-blue page canvas of #F5F7F9 lets bright content breathe, while a vivid brand teal of #00CCB4 — drawn directly from Hahow's own open-source design tokens — signals interactivity and energy without ever shouting. Cards and buttons settle on a gentle 8px radius that rounds every hard edge into something inviting, and text sits in calm near-black #262626 for comfortable, sustained reading. Warm promotional accents in orange #FA8C16 and coral #F65F55 punctuate the surface where excitement is earned — a sale, a featured course, a moment worth noticing. Set throughout in PingFang TC, the typography feels native and legible to a Traditional-Chinese audience. The overall effect is encouraging and personable, the opposite of corporate sterility — a learning surface that feels like a good teacher: clear, warm, and on your side.
25
+
26
+ ## 2. Color Palette & Roles
27
+
28
+ Hahow's color system is anchored by a teal Primary scale published in its open-source `hahow-design` theme, layered over a quiet neutral canvas and lifted by warm promotional accents.
29
+
30
+ - **Brand / Primary 500** — #00CCB4. The signature teal; interactive emphasis, brand identity, primary action text.
31
+ - **Primary 100** — #A3FFE8. Lightest teal tint for subtle fills and soft backgrounds.
32
+ - **Primary 400** — #23D9BD. A slightly deeper teal step for hover and gradient transitions.
33
+ - **Primary 800** — #006166. Deep teal for high-contrast text or pressed states on teal surfaces.
34
+ - **Primary 900** — #00444D. Darkest teal anchor for the scale.
35
+ - **Secondary 500** — #FFB940. Warm amber accent; complementary highlight to the teal.
36
+ - **Page background** — #F5F7F9. Soft gray-blue canvas behind all content.
37
+ - **Body text** — #262626 (near-black), with secondary text at rgba(0,0,0,0.65).
38
+ - **Promotional orange** — #FA8C16. Energetic accent for sales and featured callouts.
39
+ - **Coral** — #F65F55. Warm secondary promotional accent.
40
+ - **Chip fill** — rgba(0,0,0,0.04). Faint neutral wash for tags and metadata chips.
41
+
42
+ ## 3. Typography Rules
43
+
44
+ - **Typeface:** PingFang TC across the interface — native, legible Traditional-Chinese rendering.
45
+ - **Body:** 16px, primary text color #262626.
46
+ - **Heading:** 24px at weight 600.
47
+ - **Secondary text:** rgba(0,0,0,0.65) for de-emphasized labels and metadata.
48
+ - **Hierarchy principle:** lean on size and the near-black body color for contrast; reserve teal #00CCB4 for interactive text rather than headings, keeping reading surfaces calm.
49
+
50
+ ## 4. Component Stylings
51
+
52
+ ### Button
53
+
54
+ **Teal Outline (primary action)**
55
+ - Background: transparent
56
+ - Text: #00CCB4
57
+ - Border: 2px solid #DCF9F3
58
+ - Radius: 8px
59
+ - Padding: not separately verified
60
+ - Height: 42px
61
+ - Font: 16px / 600
62
+ - Use: primary call-to-action on the live hahow.in surface
63
+
64
+ **White Card Button**
65
+ - Background: #FFFFFF
66
+ - Text: #595959
67
+ - Border: not separately verified
68
+ - Radius: 8px
69
+ - Padding: not separately verified
70
+ - Height: not separately verified
71
+ - Font: not separately verified
72
+ - Use: neutral card-level action sitting on the gray-blue canvas
73
+
74
+ ### Tag Chip
75
+
76
+ **Default**
77
+ - Background: rgba(0,0,0,0.04)
78
+ - Text: rgba(0,0,0,0.65)
79
+ - Border: none
80
+ - Radius: 20px
81
+ - Padding: not separately verified
82
+ - Height: 33px
83
+ - Font: 14px / 400
84
+ - Use: metadata, category, and filter tags
85
+
86
+ ## 5. Layout Principles
87
+
88
+ - Content sits on a soft gray-blue #F5F7F9 canvas, letting white cards and bright accents read as the foreground.
89
+ - Rounded geometry is consistent: 8px on cards and buttons, 20px (fully rounded) on tag chips.
90
+ - Generous, calm spacing keeps the marketplace browsable rather than dense — the surface invites scanning across many courses.
91
+ - Teal is used sparingly as an interactive signal, never as a flood, preserving the quiet neutral base.
92
+
93
+ ## 6. Depth & Elevation
94
+
95
+ Hahow's elevation language is restrained and soft rather than dramatic. White cards (#FFFFFF) lift off the gray-blue #F5F7F9 canvas largely through tonal contrast and rounded 8px corners rather than heavy shadow. The teal outline button uses a 2px solid #DCF9F3 border — a pale teal ring — to define its edge instead of a drop shadow, reinforcing a flat, friendly aesthetic. Depth here is implied by layering light surfaces over the muted background, keeping the interface airy and approachable. (Exact shadow values were not captured in the blob and are intentionally not specified.)
96
+
97
+ ## 7. Do's and Don'ts
98
+
99
+ ### Do
100
+ - Anchor interactive emphasis in the brand teal #00CCB4 from the official tokens.
101
+ - Keep body text in near-black #262626 and secondary text in rgba(0,0,0,0.65) for calm, readable hierarchy.
102
+ - Use the soft #F5F7F9 canvas to let white cards and bright accents stand out.
103
+ - Reserve warm orange #FA8C16 and coral #F65F55 for genuinely promotional moments.
104
+
105
+ ### Don't
106
+ - Flood surfaces with teal — it is a signal, not a background.
107
+ - Sharpen the corners; the 8px (and 20px chip) radii are core to the friendly feel.
108
+ - Introduce a heavy, corporate shadow language that contradicts the flat, warm aesthetic.
109
+ - Substitute a non-native typeface for PingFang TC in Traditional-Chinese contexts.
110
+
111
+ ## 8. Responsive Behavior
112
+
113
+ The live hahow.in marketplace is a course-browsing surface built to scale from desktop grids to mobile stacks. Cards keep their 8px radius and white #FFFFFF fill across breakpoints, and tag chips stay fully rounded at 20px so metadata remains legible when reflowed. Touch targets hold comfortable heights — the teal outline button at 42px and tag chips at 33px — that translate naturally to mobile tapping. (Specific breakpoint widths were not captured in the blob and are not specified here; the verified pattern is consistent rounding, consistent color roles, and generous tap-friendly sizing across viewports.)
114
+
115
+ ## 9. Agent Prompt Guide
116
+
117
+ When generating UI in Hahow's style, instruct the agent: "Use a soft gray-blue page background (#F5F7F9) with white (#FFFFFF) content cards at 8px radius. Make the primary action a teal outline button — transparent background, #00CCB4 text, 2px solid #DCF9F3 border, 8px radius, 42px height, 16px/600 PingFang TC. Render tags as fully-rounded chips (20px radius, 33px height) with a rgba(0,0,0,0.04) fill and rgba(0,0,0,0.65) text at 14px/400. Keep body text near-black (#262626) at 16px and headings at 24px/600. Use teal #00CCB4 only for interactive emphasis. Reserve orange #FA8C16 and coral #F65F55 strictly for promotional callouts. Aim for a warm, encouraging, human EdTech tone — friendly, never corporate."
118
+
119
+ ## 10. Voice & Tone
120
+
121
+ Hahow's voice is encouraging and human — the tone of a supportive teacher and a welcoming community of learners (好學校 literally means "good school"). It is warm and approachable rather than corporate or transactional, celebrating curiosity and the act of learning itself. Microcopy should feel like gentle encouragement: inviting people to start, to keep going, to share what they know. Even promotional moments, signaled by the warm orange and coral accents, carry friendliness over hard-sell urgency.
122
+
123
+ ## 11. Brand Narrative
124
+
125
+ Hahow built Taiwan's leading EdTech course marketplace on a simple, human premise: everyone has something to learn and something to teach. As 好學校 — "the good school" — it positions itself as an open, encouraging place where knowledge moves between people rather than being handed down from an institution. The visual identity reinforces that story: a bright, friendly teal pulled from its own open-source design system, a soft and unintimidating canvas, rounded approachable shapes, and native Traditional-Chinese typography. Every choice tells the same narrative — learning here is warm, accessible, and on your side.
126
+
127
+ ## 12. Principles
128
+
129
+ - **Warmth over polish** — feel like a good teacher, not a sales funnel.
130
+ - **Calm canvas, bright signals** — let the soft #F5F7F9 base carry quiet content while teal and warm accents earn attention.
131
+ - **Rounded and approachable** — consistent 8px / 20px radii keep every surface inviting.
132
+ - **Native and legible** — PingFang TC and near-black #262626 text serve a Traditional-Chinese audience comfortably.
133
+ - **Restraint with the brand color** — teal #00CCB4 marks interaction; it is never wallpaper.
134
+
135
+ ## 13. Personas
136
+
137
+ - **The Curious Learner** — browsing the marketplace for a new skill; needs a calm, scannable surface where featured courses (orange/coral accents) stand out and primary actions (teal outline button) are obvious and inviting.
138
+ - **The Knowledge-Sharing Instructor** — creating and publishing courses; needs the platform to feel encouraging and credible, with friendly rounded components and warm tone that lower the barrier to teaching.
139
+ - **The Returning Member** — coming back to continue learning; relies on consistent color roles and tap-friendly components across devices to pick up quickly.
140
+
141
+ ## 14. States
142
+
143
+ - **Default action:** teal outline button — transparent background, #00CCB4 text, 2px solid #DCF9F3 border, 8px radius, 42px height.
144
+ - **Neutral / card action:** white card button — #FFFFFF background, #595959 text, 8px radius.
145
+ - **Metadata / tag:** chip — rgba(0,0,0,0.04) fill, rgba(0,0,0,0.65) text, 20px radius, 33px height, 14px/400.
146
+ - **Promotional emphasis:** warm orange #FA8C16 and coral #F65F55 accents for sales and featured callouts.
147
+ - (Hover, pressed, focus, and disabled state values were not captured in the blob and are intentionally not specified; the teal token scale — Primary 400 #23D9BD, Primary 800 #006166 — provides the natural darker steps for any hover/pressed treatment.)
148
+
149
+ ## 15. Motion & Easing
150
+
151
+ Hahow's motion language was not captured with specific values in the blob, so no durations or easing curves are specified here. In keeping with the brand's warm, approachable, flat aesthetic, transitions should read as gentle and encouraging rather than abrupt — soft enough to match the rounded geometry and calm canvas, with the teal token scale (Primary 400 #23D9BD into Primary 500 #00CCB4) available for smooth interactive color transitions.
152
+
153
+ ---
154
+ **Verified:** 2026-06-01
155
+ **Tier 1 sources:** https://hahow.in (live homepage live-DOM inspect), https://business.hahow.in (brand-owned regional business surface), https://github.com/hahow (brand-owned org hosting the open-source design tokens)
156
+ **Tier 2 sources:** getdesign.md/hahow — NOT LISTED. refero — not listed.
157
+ **Conflicts unresolved:** none
158
+ **Proof:** see .verification.md (## Proof block)
@@ -0,0 +1,369 @@
1
+ ---
2
+ id: hashicorp
3
+ name: Hashicorp
4
+ country: US
5
+ category: backend-devops
6
+ homepage: "https://www.hashicorp.com"
7
+ primary_color: "#000000"
8
+ logo:
9
+ type: simpleicons
10
+ slug: hashicorp
11
+ verified: "2026-05-15"
12
+ omd: "0.1"
13
+ ds:
14
+ name: Helios
15
+ url: "https://helios.hashicorp.design"
16
+ type: system
17
+ description: HashiCorp's design system documenting components and foundations.
18
+ ---
19
+
20
+ # Design System Inspiration of HashiCorp
21
+
22
+ ## 1. Visual Theme & Atmosphere
23
+
24
+ HashiCorp's website is enterprise infrastructure made tangible — a design system that must communicate the complexity of cloud infrastructure management while remaining approachable. The visual language splits between two modes: a clean white light-mode for informational sections and a dramatic dark-mode (`#15181e`, `#0d0e12`) for hero areas and product showcases, creating a day/night duality that mirrors the "build in light, deploy in dark" developer workflow.
25
+
26
+ The typography is anchored by a custom brand font (HashiCorp Sans, loaded as `__hashicorpSans_96f0ca`) that carries substantial weight — literally. Headings use 600–700 weights with tight line-heights (1.17–1.19), creating dense, authoritative text blocks that communicate enterprise confidence. The hero headline at 82px weight 600 with OpenType `"kern"` enabled is not decorative — it's infrastructure-grade typography.
27
+
28
+ What distinguishes HashiCorp is its multi-product color system. Each product in the portfolio has its own brand color — Terraform purple (`#7b42bc`), Vault yellow (`#ffcf25`), Waypoint teal (`#14c6cb`), Vagrant blue (`#1868f2`) — and these colors appear throughout as accent tokens via a CSS custom property system (`--mds-color-*`). This creates a design system within a design system: the parent brand is black-and-white with blue accents, while each child product injects its own chromatic identity.
29
+
30
+ The component system uses the `mds` (Markdown Design System) prefix, indicating a systematic, token-driven approach where colors, spacing, and states are all managed through CSS variables. Shadows are remarkably subtle — dual-layer micro-shadows using `rgba(97, 104, 117, 0.05)` that are nearly invisible but provide just enough depth to separate interactive surfaces from the background.
31
+
32
+ **Key Characteristics:**
33
+ - Dual-mode: clean white sections + dramatic dark (`#15181e`) hero/product areas
34
+ - Custom HashiCorp Sans font with 600–700 weights and `"kern"` feature
35
+ - Multi-product color system via `--mds-color-*` CSS custom properties
36
+ - Product brand colors: Terraform purple, Vault yellow, Waypoint teal, Vagrant blue
37
+ - Uppercase letter-spaced captions (13px, weight 600, 1.3px letter-spacing)
38
+ - Micro-shadows: dual-layer at 0.05 opacity — depth through whisper, not shout
39
+ - Token-driven `mds` component system with semantic variable names
40
+ - Tight border radius: 2px–8px, nothing pill-shaped or circular
41
+ - System-ui fallback stack for secondary text
42
+
43
+ ## 2. Color Palette & Roles
44
+
45
+ ### Brand Primary
46
+ - **Black** (`#000000`): Primary brand color, text on light surfaces, `--mds-color-hcp-brand`
47
+ - **Dark Charcoal** (`#15181e`): Dark mode backgrounds, hero sections
48
+ - **Near Black** (`#0d0e12`): Deepest dark mode surface, form inputs on dark
49
+
50
+ ### Neutral Scale
51
+ - **Light Gray** (`#f1f2f3`): Light backgrounds, subtle surfaces
52
+ - **Mid Gray** (`#d5d7db`): Borders, button text on dark
53
+ - **Cool Gray** (`#b2b6bd`): Border accents (at 0.1–0.4 opacity)
54
+ - **Dark Gray** (`#656a76`): Helper text, secondary labels, `--mds-form-helper-text-color`
55
+ - **Charcoal** (`#3b3d45`): Secondary text on light, button borders
56
+ - **Near White** (`#efeff1`): Primary text on dark surfaces
57
+
58
+ ### Product Brand Colors
59
+ - **Terraform Purple** (`#7b42bc`): `--mds-color-terraform-button-background`
60
+ - **Vault Yellow** (`#ffcf25`): `--mds-color-vault-button-background`
61
+ - **Waypoint Teal** (`#14c6cb`): `--mds-color-waypoint-button-background-focus`
62
+ - **Waypoint Teal Hover** (`#12b6bb`): `--mds-color-waypoint-button-background-hover`
63
+ - **Vagrant Blue** (`#1868f2`): `--mds-color-vagrant-brand`
64
+ - **Purple Accent** (`#911ced`): `--mds-color-palette-purple-300`
65
+ - **Visited Purple** (`#a737ff`): `--mds-color-foreground-action-visited`
66
+
67
+ ### Semantic Colors
68
+ - **Action Blue** (`#1060ff`): Primary action links on dark
69
+ - **Link Blue** (`#2264d6`): Primary links on light
70
+ - **Bright Blue** (`#2b89ff`): Active links, hover accent
71
+ - **Amber** (`#bb5a00`): `--mds-color-palette-amber-200`, warning states
72
+ - **Amber Light** (`#fbeabf`): `--mds-color-palette-amber-100`, warning backgrounds
73
+ - **Vault Faint Yellow** (`#fff9cf`): `--mds-color-vault-radar-gradient-faint-stop`
74
+ - **Orange** (`#a9722e`): `--mds-color-unified-core-orange-6`
75
+ - **Red** (`#731e25`): `--mds-color-unified-core-red-7`, error states
76
+ - **Navy** (`#101a59`): `--mds-color-unified-core-blue-7`
77
+
78
+ ### Shadows
79
+ - **Micro Shadow** (`rgba(97, 104, 117, 0.05) 0px 1px 1px, rgba(97, 104, 117, 0.05) 0px 2px 2px`): Default card/button elevation
80
+ - **Focus Outline**: `3px solid var(--mds-color-focus-action-external)` — systematic focus ring
81
+
82
+ ## 3. Typography Rules
83
+
84
+ ### Font Families
85
+ - **Primary Brand**: `__hashicorpSans_96f0ca` (HashiCorp Sans), with fallback: `__hashicorpSans_Fallback_96f0ca`
86
+ - **System UI**: `system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Arial`
87
+
88
+ ### Hierarchy
89
+
90
+ | Role | Font | Size | Weight | Line Height | Letter Spacing | Notes |
91
+ |------|------|------|--------|-------------|----------------|-------|
92
+ | Display Hero | HashiCorp Sans | 82px (5.13rem) | 600 | 1.17 (tight) | normal | `"kern"` enabled |
93
+ | Section Heading | HashiCorp Sans | 52px (3.25rem) | 600 | 1.19 (tight) | normal | `"kern"` enabled |
94
+ | Feature Heading | HashiCorp Sans | 42px (2.63rem) | 700 | 1.19 (tight) | -0.42px | Negative tracking |
95
+ | Sub-heading | HashiCorp Sans | 34px (2.13rem) | 600–700 | 1.18 (tight) | normal | Feature blocks |
96
+ | Card Title | HashiCorp Sans | 26px (1.63rem) | 700 | 1.19 (tight) | normal | Card and panel headings |
97
+ | Small Title | HashiCorp Sans | 19px (1.19rem) | 700 | 1.21 (tight) | normal | Compact headings |
98
+ | Body Emphasis | HashiCorp Sans | 17px (1.06rem) | 600–700 | 1.18–1.35 | normal | Bold body text |
99
+ | Body Large | system-ui | 20px (1.25rem) | 400–600 | 1.50 | normal | Hero descriptions |
100
+ | Body | system-ui | 16px (1.00rem) | 400–500 | 1.63–1.69 (relaxed) | normal | Standard body text |
101
+ | Nav Link | system-ui | 15px (0.94rem) | 500 | 1.60 (relaxed) | normal | Navigation items |
102
+ | Small Body | system-ui | 14px (0.88rem) | 400–500 | 1.29–1.71 | normal | Secondary content |
103
+ | Caption | system-ui | 13px (0.81rem) | 400–500 | 1.23–1.69 | normal | Metadata, footer links |
104
+ | Uppercase Label | HashiCorp Sans | 13px (0.81rem) | 600 | 1.69 (relaxed) | 1.3px | `text-transform: uppercase` |
105
+
106
+ ### Principles
107
+ - **Brand/System split**: HashiCorp Sans for headings and brand-critical text; system-ui for body, navigation, and functional text. The brand font carries the weight, system-ui carries the words.
108
+ - **Kern always on**: All HashiCorp Sans text enables OpenType `"kern"` — letterfitting is non-negotiable.
109
+ - **Tight headings**: Every heading uses 1.17–1.21 line-height, creating dense, stacked text blocks that feel infrastructural — solid, load-bearing.
110
+ - **Relaxed body**: Body text uses 1.50–1.69 line-height (notably generous), creating comfortable reading rhythm beneath the dense headings.
111
+ - **Uppercase labels as wayfinding**: 13px uppercase with 1.3px letter-spacing serves as the systematic category/section marker — always HashiCorp Sans weight 600.
112
+
113
+ ## 4. Component Stylings
114
+
115
+ ### Buttons
116
+
117
+ **Primary Dark**
118
+ - Background: `#15181e`
119
+ - Text: `#d5d7db`
120
+ - Padding: 9px 9px 9px 15px (asymmetric, more left padding)
121
+ - Radius: 5px
122
+ - Border: `1px solid rgba(178, 182, 189, 0.4)`
123
+ - Shadow: `rgba(97, 104, 117, 0.05) 0px 1px 1px, rgba(97, 104, 117, 0.05) 0px 2px 2px`
124
+ - Focus: `3px solid var(--mds-color-focus-action-external)`
125
+ - Hover: uses `--mds-color-surface-interactive` token
126
+
127
+ **Secondary White**
128
+ - Background: `#ffffff`
129
+ - Text: `#3b3d45`
130
+ - Padding: 8px 12px
131
+ - Radius: 4px
132
+ - Hover: `--mds-color-surface-interactive` + low-shadow elevation
133
+ - Focus: `3px solid transparent` outline
134
+ - Clean, minimal appearance
135
+
136
+ **Product-Colored Buttons**
137
+ - Terraform: background `#7b42bc`
138
+ - Vault: background `#ffcf25` (dark text)
139
+ - Waypoint: background `#14c6cb`, hover `#12b6bb`
140
+ - Each product button follows the same structural pattern but uses its brand color
141
+
142
+ ### Badges / Pills
143
+ - Background: `#42225b` (deep purple)
144
+ - Text: `#efeff1`
145
+ - Padding: 3px 7px
146
+ - Radius: 5px
147
+ - Border: `1px solid rgb(180, 87, 255)`
148
+ - Font: 16px
149
+
150
+ ### Inputs
151
+
152
+ **Text Input (Dark Mode)**
153
+ - Background: `#0d0e12`
154
+ - Text: `#efeff1`
155
+ - Border: `1px solid rgb(97, 104, 117)`
156
+ - Padding: 11px
157
+ - Radius: 5px
158
+ - Focus: `3px solid var(--mds-color-focus-action-external)` outline
159
+
160
+ **Checkbox**
161
+ - Background: `#0d0e12`
162
+ - Border: `1px solid rgb(97, 104, 117)`
163
+ - Radius: 3px
164
+
165
+ ### Links
166
+ - **Action Blue on Light**: `#2264d6`, hover → blue-600 variable, underline on hover
167
+ - **Action Blue on Dark**: `#1060ff` or `#2b89ff`, underline on hover
168
+ - **White on Dark**: `#ffffff`, transparent underline → visible underline on hover
169
+ - **Neutral on Light**: `#3b3d45`, transparent underline → visible underline on hover
170
+ - **Light on Dark**: `#efeff1`, similar hover pattern
171
+ - All links use `var(--wpl-blue-600)` as hover color
172
+
173
+ ### Cards & Containers
174
+ - Light mode: white background, micro-shadow elevation
175
+ - Dark mode: `#15181e` or darker surfaces
176
+ - Radius: 8px for cards and containers
177
+ - Product showcase cards with gradient borders or accent lighting
178
+
179
+ ### Navigation
180
+ - Clean horizontal nav with mega-menu dropdowns
181
+ - HashiCorp logo left-aligned
182
+ - system-ui 15px weight 500 for links
183
+ - Product categories organized by lifecycle management group
184
+ - "Get started" and "Contact us" CTAs in header
185
+ - Dark mode variant for hero sections
186
+
187
+ ## 5. Layout Principles
188
+
189
+ ### Spacing System
190
+ - Base unit: 8px
191
+ - Scale: 2px, 3px, 4px, 6px, 7px, 8px, 9px, 11px, 12px, 16px, 20px, 24px, 32px, 40px, 48px
192
+
193
+ ### Grid & Container
194
+ - Max content width: ~1150px (xl breakpoint)
195
+ - Full-width dark hero sections with contained content
196
+ - Card grids: 2–3 column layouts
197
+ - Generous horizontal padding at desktop scale
198
+
199
+ ### Breakpoints
200
+ | Name | Width | Key Changes |
201
+ |------|-------|-------------|
202
+ | Mobile Small | <375px | Tight single column |
203
+ | Mobile | 375–480px | Standard mobile |
204
+ | Small Tablet | 480–600px | Minor adjustments |
205
+ | Tablet | 600–768px | 2-column grids begin |
206
+ | Small Desktop | 768–992px | Full nav visible |
207
+ | Desktop | 992–1120px | Standard layout |
208
+ | Large Desktop | 1120–1440px | Max-width content |
209
+ | Ultra-wide | >1440px | Centered, generous margins |
210
+
211
+ ### Whitespace Philosophy
212
+ - **Enterprise breathing room**: Generous vertical spacing between sections (48px–80px+) communicates stability and seriousness.
213
+ - **Dense headings, spacious body**: Tight line-height headings sit above relaxed body text, creating visual "weight at the top" of each section.
214
+ - **Dark as canvas**: Dark hero sections use extra vertical padding to let 3D illustrations and gradients breathe.
215
+
216
+ ### Border Radius Scale
217
+ - Minimal (2px): Links, small inline elements
218
+ - Subtle (3px): Checkboxes, small inputs
219
+ - Standard (4px): Secondary buttons
220
+ - Comfortable (5px): Primary buttons, badges, inputs
221
+ - Card (8px): Cards, containers, images
222
+
223
+ ## 6. Depth & Elevation
224
+
225
+ | Level | Treatment | Use |
226
+ |-------|-----------|-----|
227
+ | Flat (Level 0) | No shadow | Default surfaces, text blocks |
228
+ | Whisper (Level 1) | `rgba(97, 104, 117, 0.05) 0px 1px 1px, rgba(97, 104, 117, 0.05) 0px 2px 2px` | Cards, buttons, interactive surfaces |
229
+ | Focus (Level 2) | `3px solid var(--mds-color-focus-action-external)` outline | Focus rings — color-matched to context |
230
+
231
+ **Shadow Philosophy**: HashiCorp uses arguably the subtlest shadow system in modern web design. The dual-layer shadows at 5% opacity are nearly invisible — they exist not to create visual depth but to signal interactivity. If you can see the shadow, it's too strong. This restraint communicates the enterprise value of stability — nothing floats, nothing is uncertain.
232
+
233
+ ## 7. Do's and Don'ts
234
+
235
+ ### Do
236
+ - Use HashiCorp Sans for headings and brand text, system-ui for body and UI text
237
+ - Enable `"kern"` on all HashiCorp Sans text
238
+ - Use product brand colors ONLY for their respective products (Terraform = purple, Vault = yellow, etc.)
239
+ - Apply uppercase labels at 13px weight 600 with 1.3px letter-spacing for section markers
240
+ - Keep shadows at the "whisper" level (0.05 opacity dual-layer)
241
+ - Use the `--mds-color-*` token system for consistent color application
242
+ - Maintain the tight-heading / relaxed-body rhythm (1.17–1.21 vs 1.50–1.69 line-heights)
243
+ - Use `3px solid` focus outlines for accessibility
244
+
245
+ ### Don't
246
+ - Don't use product brand colors outside their product context (no Terraform purple on Vault content)
247
+ - Don't increase shadow opacity above 0.1 — the whisper level is intentional
248
+ - Don't use pill-shaped buttons (>8px radius) — the sharp, minimal radius is structural
249
+ - Don't skip the `"kern"` feature on headings — the font requires it
250
+ - Don't use HashiCorp Sans for small body text — it's designed for 17px+ heading use
251
+ - Don't mix product colors in the same component — each product has one color
252
+ - Don't use pure black (`#000000`) for dark backgrounds — use `#15181e` or `#0d0e12`
253
+ - Don't forget the asymmetric button padding — 9px 9px 9px 15px is intentional
254
+
255
+ ## 8. Responsive Behavior
256
+
257
+ ### Breakpoints
258
+ | Name | Width | Key Changes |
259
+ |------|-------|-------------|
260
+ | Mobile | <768px | Single column, hamburger nav, stacked CTAs |
261
+ | Tablet | 768–992px | 2-column grids, nav begins expanding |
262
+ | Desktop | 992–1150px | Full layout, mega-menu nav |
263
+ | Large | >1150px | Max-width centered, generous margins |
264
+
265
+ ### Collapsing Strategy
266
+ - Hero: 82px → 52px → 42px heading sizes
267
+ - Navigation: mega-menu → hamburger
268
+ - Product cards: 3-column → 2-column → stacked
269
+ - Dark sections maintain full-width but compress padding
270
+ - Buttons: inline → full-width stacked on mobile
271
+
272
+ ## 9. Agent Prompt Guide
273
+
274
+ ### Quick Color Reference
275
+ - Light bg: `#ffffff`, `#f1f2f3`
276
+ - Dark bg: `#15181e`, `#0d0e12`
277
+ - Text light: `#000000`, `#3b3d45`
278
+ - Text dark: `#efeff1`, `#d5d7db`
279
+ - Links: `#2264d6` (light), `#1060ff` (dark), `#2b89ff` (active)
280
+ - Helper text: `#656a76`
281
+ - Borders: `rgba(178, 182, 189, 0.4)`, `rgb(97, 104, 117)`
282
+ - Focus: `3px solid` product-appropriate color
283
+
284
+ ### Example Component Prompts
285
+ - "Create a hero on dark background (#15181e). Headline at 82px HashiCorp Sans weight 600, line-height 1.17, kern enabled, white text. Sub-text at 20px system-ui weight 400, line-height 1.50, #d5d7db text. Two buttons: primary dark (#15181e, 5px radius, 9px 15px padding) and secondary white (#ffffff, 4px radius, 8px 12px padding)."
286
+ - "Design a product card: white background, 8px radius, dual-layer shadow at rgba(97,104,117,0.05). Title at 26px HashiCorp Sans weight 700, body at 16px system-ui weight 400 line-height 1.63."
287
+ - "Build an uppercase section label: 13px HashiCorp Sans weight 600, line-height 1.69, letter-spacing 1.3px, text-transform uppercase, #656a76 color."
288
+ - "Create a product-specific CTA button: Terraform → #7b42bc background, Vault → #ffcf25 with dark text, Waypoint → #14c6cb. All: 5px radius, 500 weight text, 16px system-ui."
289
+ - "Design a dark form: #0d0e12 input background, #efeff1 text, 1px solid rgb(97,104,117) border, 5px radius, 11px padding. Focus: 3px solid accent-color outline."
290
+
291
+ ### Iteration Guide
292
+ 1. Always start with the mode decision: light (white) for informational, dark (#15181e) for hero/product
293
+ 2. HashiCorp Sans for headings only (17px+), system-ui for everything else
294
+ 3. Shadows are at whisper level (0.05 opacity) — if visible, reduce
295
+ 4. Product colors are sacred — each product owns exactly one color
296
+ 5. Focus rings are always 3px solid, color-matched to product context
297
+ 6. Uppercase labels are the systematic wayfinding pattern — 13px, 600, 1.3px tracking
298
+
299
+ ## 10. Voice & Tone
300
+
301
+ HashiCorp's voice is **infrastructure-engineer-fluent** — speaks the language of platform teams who manage clouds, secrets, and clusters. Copy is capability-driven, with strong open-source narrative. Each product (Terraform, Vault, Consul, Nomad, Boundary, Packer, Waypoint) has its own micro-brand within the HashiCorp identity.
302
+
303
+ | Context | Tone |
304
+ |---|---|
305
+ | CTA | Verb. "Try Terraform", "Get started", "Sign up" |
306
+ | Marketing | Product-specific. Terraform copy ≠ Vault copy ≠ Consul copy |
307
+ | Documentation | HCL/CLI heavy, deep code examples |
308
+ | Error (apply) | Plan diff + specific resource error |
309
+
310
+ **Voice samples**
311
+ - Marketing tagline (KR): *"혁신을 위한 인프라"* <!-- verified: hashicorp.com/ko homepage 2026-05 -->
312
+
313
+ **Forbidden phrases.** Marketing superlatives without numbers. "Revolutionary infrastructure" framing.
314
+
315
+ ## 11. Brand Narrative
316
+
317
+ HashiCorp was founded **2012** in San Francisco by **Mitchell Hashimoto** and **Armon Dadgar** — classmates at the **University of Washington's Paul G. Allen School of Computer Science**, where they met **2008** working on a research project to make then-emerging Amazon/Microsoft public-cloud tech accessible to scientists ([HashiCorp — Origin Story](https://www.hashicorp.com/en/about/origin-story), [HashiCorp — Wikipedia](https://en.wikipedia.org/wiki/HashiCorp)). Hashimoto was already running open-source **Vagrant**; he created **Terraform**, which became the de-facto standard for infrastructure-as-code. The product family expanded to **Vault** (secrets), **Consul** (service mesh), **Nomad** (orchestration), **Boundary**, **Packer**, and **Waypoint**. **NASDAQ IPO 2021-12-09** under ticker **HCP**, priced at **$80/share** (above $68-72 range), valuing HashiCorp at **~$13B**. **IBM announced acquisition April 24 2024 for $6.4B**; deal **closed February 27 2025** after regulatory review, bringing HashiCorp into IBM's hybrid cloud strategy ([IBM acquisition closed — HashiCorp blog](https://www.hashicorp.com/en/blog/hashicorp-officially-joins-the-ibm-family), [Logan Bartlett podcast — Dadgar 48hrs after IBM sale](https://www.theloganbartlettshow.com/archive/ep-102-armon-dadgar-hashicorp-co-founder-reflects-48-hours-after-selling-to-ibm)). **Hashimoto resigned December 2023** ahead of the IBM deal — later launched **Ghostty** (GPU-accelerated terminal, public Dec 2024) and joined **Vercel's board March 2026** ([BusinessWire — Vercel + Hashimoto](https://www.businesswire.com/news/home/20260318957008/en/Vercel-Appoints-Mitchell-Hashimoto-Co-Founder-of-HashiCorp-and-Creator-of-Terraform-to-Board-of-Directors)). The brand voice retains its open-source-first, platform-engineering register.
318
+
319
+ ## 12. Principles
320
+
321
+ 1. **Infrastructure as code.** Every product expects HCL or equivalent declarative input. *UI implication:* CLI-first; UI dashboards exist but never replace HCL primacy.
322
+ 2. **Multi-cloud is the default.** *UI implication:* every concept is provider-agnostic in copy; specific provider logos appear only in integration grids.
323
+ 3. **Each product has a color, none are loud.** Terraform `#7B42BC` purple, Vault `#FFEC6E` yellow-green, Consul `#E03875` magenta — but used sparingly. *UI implication:* product-specific brand color appears only on hero + product nav.
324
+ 4. **3px focus rings, color-matched.** *UI implication:* don't use generic blue focus; match to the active product theme.
325
+ 5. **Uppercase labels for wayfinding.** *UI implication:* tab labels and section dividers can use uppercase 13px / 600 / 1.3px tracking — systematic, never decorative.
326
+
327
+ ## 13. Personas
328
+
329
+ *Personas are fictional archetypes informed by HashiCorp user segments (platform engineers, DevOps leads, security architects), not individual people.*
330
+
331
+ **Sergey Volkov, 38, Berlin.** Senior platform engineer. Manages Terraform state for 120+ AWS accounts. Vault for production secrets.
332
+
333
+ **Priya Krishnan, 31, Bengaluru.** SRE at fintech. Consul service mesh + Nomad orchestration replacing K8s for specific workloads.
334
+
335
+ **Marcus Davies, 45, London.** Security architect. Vault is the entire reason their compliance audit passed.
336
+
337
+ ## 14. States
338
+
339
+ | State | Treatment |
340
+ |---|---|
341
+ | **Empty (no resources)** | "Define resources in your `.tf` file" + sample HCL block |
342
+ | **Empty (no secrets)** | "Add your first secret" CTA + CLI command |
343
+ | **Loading (terraform apply)** | Plan diff visible + apply progress per resource |
344
+ | **Loading (state)** | Per-resource spinner |
345
+ | **Error (plan)** | HCL line:column + specific resource + recommended fix |
346
+ | **Error (apply)** | Resource-level rollback option |
347
+ | **Success (apply)** | Resource list + state-locked indicator clear |
348
+ | **Success (rotate)** | Vault rotation timestamp + next-rotation due date |
349
+ | **Skeleton (resource list)** | Dark cards with charcoal borders |
350
+ | **Disabled (locked state)** | Lock icon + "State locked by user@team" |
351
+ | **Loading (long apply)** | Real-time per-resource progress |
352
+
353
+ ## 15. Motion & Easing
354
+
355
+ | Token | Value | Use |
356
+ |---|---|---|
357
+ | `motion-instant` | 0ms | Toggle |
358
+ | `motion-fast` | 150ms | Hover |
359
+ | `motion-standard` | 250ms | Modal, panel |
360
+
361
+ Standard cubic-bezier; no bounce. **Focus rings** never animate — appear instant for accessibility. `prefers-reduced-motion: reduce` removes panel slide-ins.
362
+
363
+ ---
364
+
365
+ **Verified:** 2026-05-08 (omd:migrate run 27 — Apple-tier)
366
+ **Tier 1 sources:** hashicorp.com/en home + /en/products/terraform (live DOM via playwright — Shared Primary **`#1060ff`** HC Blue 5px / 36-48px / 16px·500; Light Secondary `#fafafa`/`#3b3d45` 5px; nav 4px sub-distinction; **per-product accent system** confirmed via Terraform Purple `#7b42bc`).
367
+ **Tier 2 sources:** styles.refero.design / getdesign.md — no record.
368
+ **Tier 2 (Philosophy/IPO/IBM):** Wikipedia (HashiCorp), HashiCorp Origin Story, Mayfield (UW Allen School origin), HashiCorp blog (IBM close 2025-02), BusinessWire (Hashimoto Vercel board 2026-03), Logan Bartlett Show ep 102 (Dadgar 48hrs post-sale).
369
+ **Style ref:** `stripe`. **Conflicts unresolved:** none. **Earlier mistake reverted:** prior footer captured nav-only — canonical Primary is `#1060ff` HC Blue with documented per-product-accent pattern (Terraform Purple).