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.
- package/README.md +110 -0
- package/bin/cdragon.js +170 -0
- package/package.json +31 -0
- package/skills/agent-browser/SKILL.md +50 -0
- package/skills/grill-me/SKILL.md +7 -0
- package/skills/herdr-agent/SKILL.md +142 -0
- package/skills/herdr-cli/SKILL.md +388 -0
- package/skills/herdr-cli/scripts/herdr-agent-run-and-wait +203 -0
- package/skills/herdr-cli/scripts/herdr-agent-wait-complete +168 -0
- package/skills/notion-presentation/SKILL.md +170 -0
- package/skills/notion-presentation/references/example-redis-deck.md +97 -0
- package/skills/setup-matt-pocock-skills/SKILL.md +127 -0
- package/skills/setup-matt-pocock-skills/domain.md +51 -0
- package/skills/setup-matt-pocock-skills/issue-tracker-github.md +34 -0
- package/skills/setup-matt-pocock-skills/issue-tracker-gitlab.md +35 -0
- package/skills/setup-matt-pocock-skills/issue-tracker-local.md +19 -0
- package/skills/setup-matt-pocock-skills/triage-labels.md +15 -0
- package/skills/tdd/SKILL.md +108 -0
- package/skills/tdd/mocking.md +59 -0
- package/skills/tdd/refactoring.md +10 -0
- package/skills/tdd/tests.md +61 -0
- package/skills/to-html/SKILL.md +83 -0
- package/skills/to-html/designs/INDEX.md +74 -0
- package/skills/to-html/designs/airbnb.DESIGN.md +581 -0
- package/skills/to-html/designs/airtable.DESIGN.md +275 -0
- package/skills/to-html/designs/alipay.DESIGN.md +456 -0
- package/skills/to-html/designs/apple.DESIGN.md +566 -0
- package/skills/to-html/designs/banksalad.DESIGN.md +621 -0
- package/skills/to-html/designs/channeltalk.DESIGN.md +374 -0
- package/skills/to-html/designs/clay.DESIGN.md +398 -0
- package/skills/to-html/designs/clickhouse.DESIGN.md +374 -0
- package/skills/to-html/designs/cohere.DESIGN.md +361 -0
- package/skills/to-html/designs/coinone.DESIGN.md +218 -0
- package/skills/to-html/designs/coupang.DESIGN.md +502 -0
- package/skills/to-html/designs/cursor.DESIGN.md +416 -0
- package/skills/to-html/designs/elevenlabs.DESIGN.md +376 -0
- package/skills/to-html/designs/expo.DESIGN.md +373 -0
- package/skills/to-html/designs/figma.DESIGN.md +490 -0
- package/skills/to-html/designs/framer.DESIGN.md +393 -0
- package/skills/to-html/designs/freee.DESIGN.md +572 -0
- package/skills/to-html/designs/gangnamunni.DESIGN.md +621 -0
- package/skills/to-html/designs/gmarket.DESIGN.md +483 -0
- package/skills/to-html/designs/gogolook.DESIGN.md +131 -0
- package/skills/to-html/designs/hahow.DESIGN.md +158 -0
- package/skills/to-html/designs/hashicorp.DESIGN.md +369 -0
- package/skills/to-html/designs/hyundaicard.DESIGN.md +177 -0
- package/skills/to-html/designs/ibm.DESIGN.md +420 -0
- package/skills/to-html/designs/kakaobank.DESIGN.md +548 -0
- package/skills/to-html/designs/kakaopay.DESIGN.md +544 -0
- package/skills/to-html/designs/karrot.DESIGN.md +445 -0
- package/skills/to-html/designs/kdan.DESIGN.md +160 -0
- package/skills/to-html/designs/krds.DESIGN.md +997 -0
- package/skills/to-html/designs/line.DESIGN.md +431 -0
- package/skills/to-html/designs/linear.app.DESIGN.md +548 -0
- package/skills/to-html/designs/miro.DESIGN.md +272 -0
- package/skills/to-html/designs/mistral.ai.DESIGN.md +353 -0
- package/skills/to-html/designs/money-forward.DESIGN.md +401 -0
- package/skills/to-html/designs/mongodb.DESIGN.md +357 -0
- package/skills/to-html/designs/naver.DESIGN.md +533 -0
- package/skills/to-html/designs/nhncloud.DESIGN.md +174 -0
- package/skills/to-html/designs/opencode.ai.DESIGN.md +388 -0
- package/skills/to-html/designs/pinterest.DESIGN.md +322 -0
- package/skills/to-html/designs/posthog.DESIGN.md +430 -0
- package/skills/to-html/designs/raycast.DESIGN.md +422 -0
- package/skills/to-html/designs/remember.DESIGN.md +460 -0
- package/skills/to-html/designs/resend.DESIGN.md +396 -0
- package/skills/to-html/designs/sanity.DESIGN.md +449 -0
- package/skills/to-html/designs/sendbird.DESIGN.md +285 -0
- package/skills/to-html/designs/smarthr.DESIGN.md +404 -0
- package/skills/to-html/designs/socar.DESIGN.md +403 -0
- package/skills/to-html/designs/spotify.DESIGN.md +265 -0
- package/skills/to-html/designs/supabase.DESIGN.md +348 -0
- package/skills/to-html/designs/superhuman.DESIGN.md +414 -0
- package/skills/to-html/designs/together.ai.DESIGN.md +356 -0
- package/skills/to-html/designs/toss.DESIGN.md +655 -0
- package/skills/to-html/designs/uber.DESIGN.md +387 -0
- package/skills/to-html/designs/upstage.DESIGN.md +232 -0
- package/skills/to-html/designs/velog.DESIGN.md +168 -0
- package/skills/to-html/designs/vercel.DESIGN.md +479 -0
- package/skills/to-html/designs/wanted.DESIGN.md +529 -0
- package/skills/to-html/designs/wise.DESIGN.md +276 -0
- package/skills/to-html/designs/yanolja.DESIGN.md +463 -0
- package/skills/to-html/designs/yeogiotte.DESIGN.md +459 -0
- package/skills/to-html/designs/zapier.DESIGN.md +433 -0
- package/skills/to-html/designs/zigzag.DESIGN.md +633 -0
- package/skills/to-issues/SKILL.md +84 -0
- package/skills/to-prd/SKILL.md +75 -0
- package/src/colors.js +15 -0
- package/src/link.js +47 -0
- package/src/prompt.js +137 -0
- package/src/skills.js +75 -0
|
@@ -0,0 +1,361 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: cohere
|
|
3
|
+
name: Cohere
|
|
4
|
+
country: US
|
|
5
|
+
category: ai
|
|
6
|
+
homepage: "https://cohere.com"
|
|
7
|
+
primary_color: "#39594d"
|
|
8
|
+
logo:
|
|
9
|
+
type: github
|
|
10
|
+
slug: cohere-ai
|
|
11
|
+
verified: "2026-05-15"
|
|
12
|
+
omd: "0.1"
|
|
13
|
+
ds:
|
|
14
|
+
name: Cohere Newsroom
|
|
15
|
+
url: "https://cohere.com/newsroom"
|
|
16
|
+
type: brand
|
|
17
|
+
description: Cohere's press kit with logos, symbols, and media resources.
|
|
18
|
+
og_image: "https://cdn.sanity.io/images/rjtqmwfu/web3-prod/0750efbc3db33b1a67bc77575525b076f0137f26-1200x630.jpg?w=1200&h=630"
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
# Design System Inspiration of Cohere
|
|
22
|
+
|
|
23
|
+
## 1. Visual Theme & Atmosphere
|
|
24
|
+
|
|
25
|
+
Cohere's interface is a polished enterprise command deck — confident, clean, and designed to make AI feel like serious infrastructure rather than a consumer toy. The experience lives on a bright white canvas where content is organized into generously rounded cards (22px radius) that create an organic, cloud-like containment language. This is a site that speaks to CTOs and enterprise architects: professional without being cold, sophisticated without being intimidating.
|
|
26
|
+
|
|
27
|
+
The design language bridges two worlds with a dual-typeface system: CohereText, a custom display serif with tight tracking, gives headlines the gravitas of a technology manifesto, while Unica77 Cohere Web handles all body and UI text with geometric Swiss precision. This serif/sans pairing creates a "confident authority meets engineering clarity" personality that perfectly reflects an enterprise AI platform.
|
|
28
|
+
|
|
29
|
+
Color is used with extreme restraint — the interface is almost entirely black-and-white with cool gray borders (`#d9d9dd`, `#e5e7eb`). Purple-violet appears only in photographic hero bands, gradient sections, and the interactive blue (`#1863dc`) that signals hover and focus states. This chromatic restraint means that when color DOES appear — in product screenshots, enterprise photography, and the deep purple section — it carries maximum visual weight.
|
|
30
|
+
|
|
31
|
+
**Key Characteristics:**
|
|
32
|
+
- Bright white canvas with cool gray containment borders
|
|
33
|
+
- 22px signature border-radius — the distinctive "Cohere card" roundness
|
|
34
|
+
- Dual custom typeface: CohereText (display serif) + Unica77 (body sans)
|
|
35
|
+
- Enterprise-grade chromatic restraint: black, white, cool grays, minimal purple-blue accent
|
|
36
|
+
- Deep purple/violet hero sections providing dramatic contrast
|
|
37
|
+
- Ghost/transparent buttons that shift to blue on hover
|
|
38
|
+
- Enterprise photography showing diverse real-world applications
|
|
39
|
+
- CohereMono for code and technical labels with uppercase transforms
|
|
40
|
+
|
|
41
|
+
## 2. Color Palette & Roles
|
|
42
|
+
|
|
43
|
+
### Primary
|
|
44
|
+
- **Cohere Black** (`#000000`): Primary headline text and maximum-emphasis elements.
|
|
45
|
+
- **Near Black** (`#212121`): Standard body link color — slightly softer than pure black.
|
|
46
|
+
- **Deep Dark** (`#17171c`): A blue-tinted near-black for navigation and dark-section text.
|
|
47
|
+
|
|
48
|
+
### Secondary & Accent
|
|
49
|
+
- **Interaction Blue** (`#1863dc`): The primary interactive accent — appears on button hover, focus states, and active links. The sole chromatic action color.
|
|
50
|
+
- **Ring Blue** (`#4c6ee6` at 50%): Tailwind ring color for keyboard focus indicators.
|
|
51
|
+
- **Focus Purple** (`#9b60aa`): Input focus border color — a muted violet.
|
|
52
|
+
|
|
53
|
+
### Surface & Background
|
|
54
|
+
- **Pure White** (`#ffffff`): The primary page background and card surface.
|
|
55
|
+
- **Snow** (`#fafafa`): Subtle elevated surfaces and light-section backgrounds.
|
|
56
|
+
- **Lightest Gray** (`#f2f2f2`): Card borders and the softest containment lines.
|
|
57
|
+
|
|
58
|
+
### Neutrals & Text
|
|
59
|
+
- **Muted Slate** (`#93939f`): De-emphasized footer links and tertiary text — a cool-toned gray with a slight blue-violet tint.
|
|
60
|
+
- **Border Cool** (`#d9d9dd`): Standard section and list-item borders — a cool, slightly purple-tinted gray.
|
|
61
|
+
- **Border Light** (`#e5e7eb`): Lighter border variant — Tailwind's standard gray-200.
|
|
62
|
+
|
|
63
|
+
### Gradient System
|
|
64
|
+
- **Purple-Violet Hero Band**: Deep purple gradient sections that create dramatic contrast against the white canvas. These appear as full-width bands housing product screenshots and key messaging.
|
|
65
|
+
- **Dark Footer Gradient**: The page transitions through deep purple/charcoal to the black footer, creating a "dusk" effect.
|
|
66
|
+
|
|
67
|
+
## 3. Typography Rules
|
|
68
|
+
|
|
69
|
+
### Font Family
|
|
70
|
+
- **Display**: `CohereText`, with fallbacks: `Space Grotesk, Inter, ui-sans-serif, system-ui`
|
|
71
|
+
- **Body / UI**: `Unica77 Cohere Web`, with fallbacks: `Inter, Arial, ui-sans-serif, system-ui`
|
|
72
|
+
- **Code**: `CohereMono`, with fallbacks: `Arial, ui-sans-serif, system-ui`
|
|
73
|
+
- **Icons**: `CohereIconDefault` (custom icon font)
|
|
74
|
+
|
|
75
|
+
### Hierarchy
|
|
76
|
+
|
|
77
|
+
| Role | Font | Size | Weight | Line Height | Letter Spacing | Notes |
|
|
78
|
+
|------|------|------|--------|-------------|----------------|-------|
|
|
79
|
+
| Display / Hero | CohereText | 72px (4.5rem) | 400 | 1.00 (tight) | -1.44px | Maximum impact, serif authority |
|
|
80
|
+
| Display Secondary | CohereText | 60px (3.75rem) | 400 | 1.00 (tight) | -1.2px | Large section headings |
|
|
81
|
+
| Section Heading | Unica77 | 48px (3rem) | 400 | 1.20 (tight) | -0.48px | Feature section titles |
|
|
82
|
+
| Sub-heading | Unica77 | 32px (2rem) | 400 | 1.20 (tight) | -0.32px | Card headings, feature names |
|
|
83
|
+
| Feature Title | Unica77 | 24px (1.5rem) | 400 | 1.30 | normal | Smaller section titles |
|
|
84
|
+
| Body Large | Unica77 | 18px (1.13rem) | 400 | 1.40 | normal | Intro paragraphs |
|
|
85
|
+
| Body / Button | Unica77 | 16px (1rem) | 400 | 1.50 | normal | Standard body, button text |
|
|
86
|
+
| Button Medium | Unica77 | 14px (0.88rem) | 500 | 1.71 (relaxed) | normal | Smaller buttons, emphasized labels |
|
|
87
|
+
| Caption | Unica77 | 14px (0.88rem) | 400 | 1.40 | normal | Metadata, descriptions |
|
|
88
|
+
| Uppercase Label | Unica77 / CohereMono | 14px (0.88rem) | 400 | 1.40 | 0.28px | Uppercase section labels |
|
|
89
|
+
| Small | Unica77 | 12px (0.75rem) | 400 | 1.40 | normal | Smallest text, footer links |
|
|
90
|
+
| Code Micro | CohereMono | 8px (0.5rem) | 400 | 1.40 | 0.16px | Tiny uppercase code labels |
|
|
91
|
+
|
|
92
|
+
### Principles
|
|
93
|
+
- **Serif for declaration, sans for utility**: CohereText carries the brand voice at display scale — its serif terminals give headlines the authority of published research. Unica77 handles everything functional with Swiss-geometric neutrality.
|
|
94
|
+
- **Negative tracking at scale**: CohereText uses -1.2px to -1.44px letter-spacing at 60–72px, creating dense, impactful text blocks.
|
|
95
|
+
- **Single body weight**: Nearly all Unica77 usage is weight 400. Weight 500 appears only for small button emphasis. The system relies on size and spacing, not weight contrast.
|
|
96
|
+
- **Uppercase code labels**: CohereMono uses uppercase with positive letter-spacing (0.16–0.28px) for technical tags and section markers.
|
|
97
|
+
|
|
98
|
+
## 4. Component Stylings
|
|
99
|
+
|
|
100
|
+
### Buttons
|
|
101
|
+
|
|
102
|
+
**Ghost / Transparent**
|
|
103
|
+
- Background: transparent (`rgba(255, 255, 255, 0)`)
|
|
104
|
+
- Text: Cohere Black (`#000000`)
|
|
105
|
+
- No border visible
|
|
106
|
+
- Hover: text shifts to Interaction Blue (`#1863dc`), opacity 0.8
|
|
107
|
+
- Focus: solid 2px outline in Interaction Blue
|
|
108
|
+
- The primary button style — invisible until interacted with
|
|
109
|
+
|
|
110
|
+
**Dark Solid**
|
|
111
|
+
- Background: dark/black
|
|
112
|
+
- Text: Pure White
|
|
113
|
+
- For CTA on light surfaces
|
|
114
|
+
- Pill-shaped or standard radius
|
|
115
|
+
|
|
116
|
+
**Outlined**
|
|
117
|
+
- Border-based containment
|
|
118
|
+
- Used in secondary actions
|
|
119
|
+
|
|
120
|
+
### Cards & Containers
|
|
121
|
+
- Background: Pure White (`#ffffff`)
|
|
122
|
+
- Border: thin solid Lightest Gray (`1px solid #f2f2f2`) for subtle cards; Cool Border (`#d9d9dd`) for emphasized
|
|
123
|
+
- Radius: **22px** — the signature Cohere radius for primary cards, images, and dialog containers. Also 4px, 8px, 16px, 20px for smaller elements
|
|
124
|
+
- Shadow: minimal — Cohere relies on background color and borders rather than shadows
|
|
125
|
+
- Special: `0px 0px 22px 22px` radius (bottom-only rounding) for section containers
|
|
126
|
+
- Dialog: 8px radius for modal/dialog boxes
|
|
127
|
+
|
|
128
|
+
### Inputs & Forms
|
|
129
|
+
- Text: white on dark input, black on light
|
|
130
|
+
- Focus border: Focus Purple (`#9b60aa`) with `1px solid`
|
|
131
|
+
- Focus shadow: red ring (`rgb(179, 0, 0) 0px 0px 0px 2px`) — likely for error state indication
|
|
132
|
+
- Focus outline: Interaction Blue solid 2px
|
|
133
|
+
|
|
134
|
+
### Navigation
|
|
135
|
+
- Clean horizontal nav on white or dark background
|
|
136
|
+
- Logo: Cohere wordmark (custom SVG)
|
|
137
|
+
- Links: Dark text at 16px Unica77
|
|
138
|
+
- CTA: Dark solid button
|
|
139
|
+
- Mobile: hamburger collapse
|
|
140
|
+
|
|
141
|
+
### Image Treatment
|
|
142
|
+
- Enterprise photography with diverse subjects and environments
|
|
143
|
+
- Purple-tinted hero photography for dramatic sections
|
|
144
|
+
- Product UI screenshots on dark surfaces
|
|
145
|
+
- Images with 22px radius matching card system
|
|
146
|
+
- Full-bleed purple gradient sections
|
|
147
|
+
|
|
148
|
+
### Distinctive Components
|
|
149
|
+
|
|
150
|
+
**22px Card System**
|
|
151
|
+
- The 22px border-radius is Cohere's visual signature
|
|
152
|
+
- All primary cards, images, and containers use this radius
|
|
153
|
+
- Creates a cloud-like, organic softness that's distinctive from the typical 8–12px
|
|
154
|
+
|
|
155
|
+
**Enterprise Trust Bar**
|
|
156
|
+
- Company logos displayed in a horizontal strip
|
|
157
|
+
- Demonstrates enterprise adoption
|
|
158
|
+
- Clean, monochrome logo treatment
|
|
159
|
+
|
|
160
|
+
**Purple Hero Bands**
|
|
161
|
+
- Full-width deep purple sections housing product showcases
|
|
162
|
+
- Create dramatic visual breaks in the white page flow
|
|
163
|
+
- Product screenshots float within the purple environment
|
|
164
|
+
|
|
165
|
+
**Uppercase Code Tags**
|
|
166
|
+
- CohereMono in uppercase with letter-spacing
|
|
167
|
+
- Used as section markers and categorization labels
|
|
168
|
+
- Creates a technical, structured information hierarchy
|
|
169
|
+
|
|
170
|
+
## 5. Layout Principles
|
|
171
|
+
|
|
172
|
+
### Spacing System
|
|
173
|
+
- Base unit: 8px
|
|
174
|
+
- Scale: 2px, 6px, 8px, 10px, 12px, 16px, 20px, 22px, 24px, 28px, 32px, 36px, 40px, 56px, 60px
|
|
175
|
+
- Button padding varies by variant
|
|
176
|
+
- Card internal padding: approximately 24–32px
|
|
177
|
+
- Section vertical spacing: generous (56–60px between sections)
|
|
178
|
+
|
|
179
|
+
### Grid & Container
|
|
180
|
+
- Max container width: up to 2560px (very wide) with responsive scaling
|
|
181
|
+
- Hero: centered with dramatic typography
|
|
182
|
+
- Feature sections: multi-column card grids
|
|
183
|
+
- Enterprise sections: full-width purple bands
|
|
184
|
+
- 26 breakpoints detected — extremely granular responsive system
|
|
185
|
+
|
|
186
|
+
### Whitespace Philosophy
|
|
187
|
+
- **Enterprise clarity**: Each section presents one clear proposition with breathing room between.
|
|
188
|
+
- **Photography as hero**: Large photographic sections provide visual interest without requiring decorative design elements.
|
|
189
|
+
- **Card grouping**: Related content is grouped into 22px-rounded cards, creating natural information clusters.
|
|
190
|
+
|
|
191
|
+
### Border Radius Scale
|
|
192
|
+
- Sharp (4px): Navigation elements, small tags, pagination
|
|
193
|
+
- Comfortable (8px): Dialog boxes, secondary containers, small cards
|
|
194
|
+
- Generous (16px): Featured containers, medium cards
|
|
195
|
+
- Large (20px): Large feature cards
|
|
196
|
+
- Signature (22px): Primary cards, hero images, main containers — THE Cohere radius
|
|
197
|
+
- Pill (9999px): Buttons, tags, status indicators
|
|
198
|
+
|
|
199
|
+
## 6. Depth & Elevation
|
|
200
|
+
|
|
201
|
+
| Level | Treatment | Use |
|
|
202
|
+
|-------|-----------|-----|
|
|
203
|
+
| Flat (Level 0) | No shadow, no border | Page background, text blocks |
|
|
204
|
+
| Bordered (Level 1) | `1px solid #f2f2f2` or `#d9d9dd` | Standard cards, list separators |
|
|
205
|
+
| Purple Band (Level 2) | Full-width dark purple background | Hero sections, feature showcases |
|
|
206
|
+
|
|
207
|
+
**Shadow Philosophy**: Cohere is nearly shadow-free. Depth is communicated through **background color contrast** (white cards on purple bands, white surface on snow), **border containment** (cool gray borders), and the dramatic **light-to-dark section alternation**. When elements need elevation, they achieve it through being white-on-dark rather than through shadow casting.
|
|
208
|
+
|
|
209
|
+
## 7. Do's and Don'ts
|
|
210
|
+
|
|
211
|
+
### Do
|
|
212
|
+
- Use 22px border-radius on all primary cards and containers — it's the visual signature
|
|
213
|
+
- Use CohereText for display headings (72px, 60px) with negative letter-spacing
|
|
214
|
+
- Use Unica77 for all body and UI text at weight 400
|
|
215
|
+
- Keep the palette black-and-white with cool gray borders
|
|
216
|
+
- Use Interaction Blue (#1863dc) only for hover/focus interactive states
|
|
217
|
+
- Use deep purple sections for dramatic visual breaks and product showcases
|
|
218
|
+
- Apply uppercase + letter-spacing on CohereMono for section labels
|
|
219
|
+
- Maintain enterprise-appropriate photography with diverse subjects
|
|
220
|
+
|
|
221
|
+
### Don't
|
|
222
|
+
- Don't use border-radius other than 22px on primary cards — the signature radius matters
|
|
223
|
+
- Don't introduce warm colors — the palette is strictly cool-toned
|
|
224
|
+
- Don't use heavy shadows — depth comes from color contrast and borders
|
|
225
|
+
- Don't use bold (700+) weight on body text — 400–500 is the range
|
|
226
|
+
- Don't skip the serif/sans hierarchy — CohereText for headlines, Unica77 for body
|
|
227
|
+
- Don't use purple as a surface color for cards — purple is reserved for full-width sections
|
|
228
|
+
- Don't reduce section spacing below 40px — enterprise layouts need breathing room
|
|
229
|
+
- Don't use decoration on buttons by default — ghost/transparent is the base state
|
|
230
|
+
|
|
231
|
+
## 8. Responsive Behavior
|
|
232
|
+
|
|
233
|
+
### Breakpoints
|
|
234
|
+
| Name | Width | Key Changes |
|
|
235
|
+
|------|-------|-------------|
|
|
236
|
+
| Small Mobile | <425px | Compact layout, minimal spacing |
|
|
237
|
+
| Mobile | 425–640px | Single column, stacked cards |
|
|
238
|
+
| Large Mobile | 640–768px | Minor spacing adjustments |
|
|
239
|
+
| Tablet | 768–1024px | 2-column grids begin |
|
|
240
|
+
| Desktop | 1024–1440px | Full multi-column layout |
|
|
241
|
+
| Large Desktop | 1440–2560px | Maximum container width |
|
|
242
|
+
|
|
243
|
+
*26 breakpoints detected — one of the most granularly responsive sites in the dataset.*
|
|
244
|
+
|
|
245
|
+
### Touch Targets
|
|
246
|
+
- Buttons adequately sized for touch interaction
|
|
247
|
+
- Navigation links with comfortable spacing
|
|
248
|
+
- Card surfaces as touch targets
|
|
249
|
+
|
|
250
|
+
### Collapsing Strategy
|
|
251
|
+
- **Navigation**: Full nav collapses to hamburger
|
|
252
|
+
- **Feature grids**: Multi-column → 2-column → single column
|
|
253
|
+
- **Hero text**: 72px → 48px → 32px progressive scaling
|
|
254
|
+
- **Purple sections**: Maintain full-width, content stacks
|
|
255
|
+
- **Card grids**: 3 → 2 → 1 column
|
|
256
|
+
|
|
257
|
+
### Image Behavior
|
|
258
|
+
- Photography scales proportionally within 22px-radius containers
|
|
259
|
+
- Product screenshots maintain aspect ratio
|
|
260
|
+
- Purple sections scale background proportionally
|
|
261
|
+
|
|
262
|
+
## 9. Agent Prompt Guide
|
|
263
|
+
|
|
264
|
+
### Quick Color Reference
|
|
265
|
+
- Primary Text: "Cohere Black (#000000)"
|
|
266
|
+
- Page Background: "Pure White (#ffffff)"
|
|
267
|
+
- Secondary Text: "Near Black (#212121)"
|
|
268
|
+
- Hover Accent: "Interaction Blue (#1863dc)"
|
|
269
|
+
- Muted Text: "Muted Slate (#93939f)"
|
|
270
|
+
- Card Borders: "Lightest Gray (#f2f2f2)"
|
|
271
|
+
- Section Borders: "Border Cool (#d9d9dd)"
|
|
272
|
+
|
|
273
|
+
### Example Component Prompts
|
|
274
|
+
- "Create a hero section on Pure White (#ffffff) with CohereText at 72px weight 400, line-height 1.0, letter-spacing -1.44px. Cohere Black text. Subtitle in Unica77 at 18px weight 400, line-height 1.4."
|
|
275
|
+
- "Design a feature card with 22px border-radius, 1px solid Lightest Gray (#f2f2f2) border on white. Title in Unica77 at 32px, letter-spacing -0.32px. Body in Unica77 at 16px, Muted Slate (#93939f)."
|
|
276
|
+
- "Build a ghost button: transparent background, Cohere Black text in Unica77 at 16px. On hover, text shifts to Interaction Blue (#1863dc) with 0.8 opacity. Focus: 2px solid Interaction Blue outline."
|
|
277
|
+
- "Create a deep purple full-width section with white text. CohereText at 60px for the heading. Product screenshot floats within using 22px border-radius."
|
|
278
|
+
- "Design a section label using CohereMono at 14px, uppercase, letter-spacing 0.28px. Muted Slate (#93939f) text."
|
|
279
|
+
|
|
280
|
+
### Iteration Guide
|
|
281
|
+
1. Focus on ONE component at a time
|
|
282
|
+
2. Always use 22px radius for primary cards — "the Cohere card roundness"
|
|
283
|
+
3. Specify the typeface — CohereText for headlines, Unica77 for body, CohereMono for labels
|
|
284
|
+
4. Interactive elements use Interaction Blue (#1863dc) on hover only
|
|
285
|
+
5. Keep surfaces white with cool gray borders — no warm tones
|
|
286
|
+
6. Purple is for full-width sections, never card backgrounds
|
|
287
|
+
|
|
288
|
+
## 10. Voice & Tone
|
|
289
|
+
|
|
290
|
+
Cohere's voice is **enterprise-AI-careful** — formal but readable, security-aware, never breathless. Public messaging emphasizes "private, secure, customized" enterprise positioning over consumer-AI hype. Korean tagline ("개인, 보안, 맞춤형") tracks the same triple.
|
|
291
|
+
|
|
292
|
+
| Context | Tone |
|
|
293
|
+
|---|---|
|
|
294
|
+
| CTA | Verb-noun. "Request demo", "Talk to sales", "Start free" |
|
|
295
|
+
| Marketing | Enterprise-language. "Private, secure, customized" recurring triplet |
|
|
296
|
+
| Onboarding | Documentation-first; quickstart with API keys |
|
|
297
|
+
| Error | Formal. "Request denied: insufficient quota. Contact sales." |
|
|
298
|
+
| Compliance | Heavy SOC 2 / ISO references; trust pages prominent |
|
|
299
|
+
|
|
300
|
+
**Voice samples**
|
|
301
|
+
- *"엔터프라이즈 AI: 개인, 보안, 맞춤형"* <!-- verified: cohere.com/ko 2026-05 -->
|
|
302
|
+
- *"데모 요청"* / *"Request a demo"* <!-- verified: cohere.com -->
|
|
303
|
+
|
|
304
|
+
**Forbidden phrases.** "AGI", "superintelligence". Generic "AI revolution" framing. Casual emoji.
|
|
305
|
+
|
|
306
|
+
## 11. Brand Narrative
|
|
307
|
+
|
|
308
|
+
Cohere was founded in **2019** in **Toronto, Canada** by **Aidan Gomez** (CEO), **Nick Frosst**, and **Ivan Zhang** ([Aidan Gomez — Wikipedia](https://en.wikipedia.org/wiki/Aidan_Gomez), [Cohere About](https://cohere.com/about)). **Aidan Gomez was 20 years old when he co-authored "Attention Is All You Need"** in 2017 as a Google Brain intern — the foundational Transformer architecture paper that every modern LLM descends from. Nick Frosst worked at **Google Brain Toronto** with **Geoffrey Hinton** (the "Godfather of AI", who later joined Cohere as advisor) ([Globe and Mail](https://www.theglobeandmail.com/business/article-toronto-ai-star-cohere-lands-tiger-led-125-million-venture-funding/)). The **first cheque came from Radical Ventures** (Toronto AI VC) ([U Toronto Centre for Entrepreneurship](https://www.entrepreneurship.artsci.utoronto.ca/news/how-cohere-ai-startup-co-founded-alumni-landed-170m-funding-year)). Cohere has raised **~US$1.6B at >$7B valuation** as of Sept 2025 ([Tracxn](https://tracxn.com/d/companies/cohere/__o4xfwmr3XwgsGEyH41XvwBm6Xd-SjsMlSld3d4ci6G0)) — Tiger Global led an earlier $125M round. Founding observation: enterprises needed customizable LLMs that respected data privacy. RAG-first, private deployment, on-prem available. **North** is Cohere's enterprise AI agent product.
|
|
309
|
+
|
|
310
|
+
## 12. Principles
|
|
311
|
+
|
|
312
|
+
1. **Privacy is the product, not a footnote.** *UI implication:* privacy guarantees first-class on landing pages.
|
|
313
|
+
2. **RAG-first architecture.** *UI implication:* surfaces emphasize "your data + our models".
|
|
314
|
+
3. **Enterprise doesn't mean stuffy.** *UI implication:* trust pages explain SOC 2 in plain English.
|
|
315
|
+
4. **Interaction Blue on hover only.** *UI implication:* don't use brand blue for static CTAs.
|
|
316
|
+
5. **Purple bands for sections, never cards.** *UI implication:* never apply purple to cards/buttons.
|
|
317
|
+
|
|
318
|
+
## 13. Personas
|
|
319
|
+
|
|
320
|
+
*Personas are fictional archetypes informed by Cohere user segments (enterprise platform engineers, AI/ML platform leads, regulated-industry compliance), not individual people.*
|
|
321
|
+
|
|
322
|
+
**Catherine Liu, 42, Toronto.** Director of AI/ML at a Canadian bank. Cohere is the only LLM vendor approved by their CISO.
|
|
323
|
+
|
|
324
|
+
**Hiroshi Tanaka, 36, Tokyo.** Senior platform engineer at multinational logistics. Integrates Cohere Embed for 30+ language search.
|
|
325
|
+
|
|
326
|
+
**David Mensah, 50, Johannesburg.** Head of risk at insurance carrier. On-prem deployment required.
|
|
327
|
+
|
|
328
|
+
## 14. States
|
|
329
|
+
|
|
330
|
+
| State | Treatment |
|
|
331
|
+
|---|---|
|
|
332
|
+
| **Empty (no API keys)** | "Generate your first API key" CTA + quickstart code |
|
|
333
|
+
| **Empty (no datasets)** | "Connect a data source" with provider grid |
|
|
334
|
+
| **Loading (model inference)** | Per-token streaming visible; never just spinner |
|
|
335
|
+
| **Loading (RAG retrieval)** | Two-phase: "Retrieving (12 docs)" → "Generating" |
|
|
336
|
+
| **Error (rate limit)** | "Tier-1 limit reached (60 req/min). Upgrade or wait." |
|
|
337
|
+
| **Error (auth)** | "API key expired. Generate a new key in Settings → API Keys." |
|
|
338
|
+
| **Success (deployment)** | Endpoint URL + credentials, security reminder |
|
|
339
|
+
| **Success (fine-tuned)** | Email + dashboard notification with eval metrics |
|
|
340
|
+
| **Skeleton (deployments)** | White rows with cool-gray border skeletons |
|
|
341
|
+
| **Disabled (no quota)** | 0.5 opacity + tooltip "Upgrade to enable" |
|
|
342
|
+
| **Loading (long fine-tune)** | Persistent progress with ETA |
|
|
343
|
+
|
|
344
|
+
## 15. Motion & Easing
|
|
345
|
+
|
|
346
|
+
| Token | Value | Use |
|
|
347
|
+
|---|---|---|
|
|
348
|
+
| `motion-instant` | 0ms | Toggle |
|
|
349
|
+
| `motion-fast` | 150ms | Hover (Interaction Blue color shift) |
|
|
350
|
+
| `motion-standard` | 250ms | Modal, panel |
|
|
351
|
+
| `motion-streaming` | continuous | Token-by-token model output |
|
|
352
|
+
|
|
353
|
+
Standard cubic-bezier. **No bouncy springs** — enterprise register. `prefers-reduced-motion: reduce` removes hover transitions and panel slide-ins.
|
|
354
|
+
|
|
355
|
+
---
|
|
356
|
+
|
|
357
|
+
**Verified:** 2026-05-08 (B1 loop)
|
|
358
|
+
**Tier 1 sources:** cohere.com/ko (live DOM via playwright — Dark `#17171c` Primary 9999px / 12×16-24 / 44-49px / 16px·400)
|
|
359
|
+
**Tier 2 sources:** styles.refero.design / getdesign.md — no record.
|
|
360
|
+
**Tier 1 (Philosophy):** cohere.com homepage; founder bios; Trust + Security pages.
|
|
361
|
+
**Style ref:** `stripe`. **Conflicts unresolved:** none.
|
|
@@ -0,0 +1,218 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: coinone
|
|
3
|
+
name: "Coinone"
|
|
4
|
+
country: KR
|
|
5
|
+
category: fintech
|
|
6
|
+
homepage: "https://coinone.co.kr"
|
|
7
|
+
primary_color: "#006BD6"
|
|
8
|
+
logo:
|
|
9
|
+
type: favicon
|
|
10
|
+
slug: "https://www.google.com/s2/favicons?domain=coinone.co.kr&sz=256"
|
|
11
|
+
verified: "2026-06-03"
|
|
12
|
+
omd: "0.1"
|
|
13
|
+
ds:
|
|
14
|
+
name: "Coinone Brand Guideline"
|
|
15
|
+
url: "https://coinonecorp.com/company/brand"
|
|
16
|
+
type: brand
|
|
17
|
+
description: "Official BI/brand guideline (v4.0) — Coinone Blue color system, signature logo lockups, clear-space rules."
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
# Coinone
|
|
21
|
+
|
|
22
|
+
Coinone is one of Korea's longest-running cryptocurrency exchanges (est. 2014). Its product face pairs a trustworthy, institutional blue with a clean, high-density trading surface — a fintech tone that has to read as both safe and fast.
|
|
23
|
+
|
|
24
|
+
## 1. Visual Theme & Atmosphere
|
|
25
|
+
|
|
26
|
+
Coinone presents as a calm, blue-anchored fintech exchange that wants to feel safe before it feels exciting. The chrome is mostly white with near-black text, letting a single confident blue carry every primary action and the brand itself. Surfaces are flat and lightly bordered rather than shadow-heavy; density rises sharply once you enter trading views, but the marketing and onboarding surfaces stay airy and reassuring. The result is a "boring-on-purpose" trust aesthetic typical of regulated Korean crypto, lifted by a brighter point-blue used sparingly for emphasis and AI/automation features.
|
|
27
|
+
|
|
28
|
+
## 2. Color Palette & Roles
|
|
29
|
+
|
|
30
|
+
Coinone's official BI defines "Coinone Blue" as the identity color, applied through a small set of roles. The live product applies a slightly deeper, more saturated blue to primary CTAs than the BI swatch.
|
|
31
|
+
|
|
32
|
+
- **Coinone Blue (Main):** `#006BD6` — brand identity color (BI v4.0)
|
|
33
|
+
- **Point Blue:** `#0090FF` — emphasis / highlight accent (BI)
|
|
34
|
+
- **Sub Blue 1:** `#194386` — deep supporting blue (BI)
|
|
35
|
+
- **Sub Blue 2:** `#062554` — darkest navy, headings on light (BI)
|
|
36
|
+
- **Primary CTA (live):** `#0B59D5` — actual filled-button blue used on coinone.co.kr
|
|
37
|
+
- **Accent outline blue (live):** `#1772F8` — signup / inline emphasis outline
|
|
38
|
+
- **Text primary:** `#040505` — near-black body & headings
|
|
39
|
+
- **Text secondary:** `#17181B` — strong neutral
|
|
40
|
+
- **Text muted:** `#6B7684` — captions, helper text
|
|
41
|
+
- **Neutral border:** `#DDE4EB` — input & outline-button borders
|
|
42
|
+
- **Gray scale (BI):** `#EEEFF0` / `#CFD0D3` / `#8D9299` / `#616670`
|
|
43
|
+
- **Surface tint:** `#EBF0F5` — light fill (store buttons, soft chips)
|
|
44
|
+
- **Trading direction:** Korean market convention — price-up = red, price-down = blue (not measured as fixed tokens; applied per ticker state).
|
|
45
|
+
|
|
46
|
+
## 3. Typography Rules
|
|
47
|
+
|
|
48
|
+
- System Korean/Latin sans (Pretendard-class) — no proprietary display face on web.
|
|
49
|
+
- Hero / section titles: bold, large, near-black `#040505`.
|
|
50
|
+
- Primary control label: 15px / 700.
|
|
51
|
+
- Body & list rows: 13–15px / 400–500.
|
|
52
|
+
- Micro-labels & helper: 12px / 400, muted `#6B7684`.
|
|
53
|
+
- Numerals run dense and right-aligned in trading tables; weight 500–700 for figures that change.
|
|
54
|
+
|
|
55
|
+
## 4. Component Stylings
|
|
56
|
+
|
|
57
|
+
### Buttons
|
|
58
|
+
|
|
59
|
+
**Primary (filled)**
|
|
60
|
+
- Background: `#0B59D5`
|
|
61
|
+
- Text: `#FFFFFF`
|
|
62
|
+
- Radius: 8px
|
|
63
|
+
- Padding: 14px 18px
|
|
64
|
+
- Height: 46px
|
|
65
|
+
- Font: 15px / 700
|
|
66
|
+
|
|
67
|
+
**Secondary (outline on white)**
|
|
68
|
+
- Background: `#FFFFFF`
|
|
69
|
+
- Text: `#040505`
|
|
70
|
+
- Border: 1px solid `#DDE4EB`
|
|
71
|
+
- Radius: 8px
|
|
72
|
+
- Padding: 14px 18px
|
|
73
|
+
- Height: 46px
|
|
74
|
+
- Font: 15px / 500
|
|
75
|
+
|
|
76
|
+
**Accent outline (signup / inline emphasis)**
|
|
77
|
+
- Background: transparent
|
|
78
|
+
- Text: `#1772F8`
|
|
79
|
+
- Border: 1px solid `#1772F8`
|
|
80
|
+
- Radius: 3px
|
|
81
|
+
- Padding: 0 8px
|
|
82
|
+
- Height: 24px
|
|
83
|
+
- Font: 12px / 700
|
|
84
|
+
|
|
85
|
+
**Text link**
|
|
86
|
+
- Background: transparent
|
|
87
|
+
- Text: `#0B59D5`
|
|
88
|
+
- Font: 16px / 400
|
|
89
|
+
|
|
90
|
+
**Store button (light)**
|
|
91
|
+
- Background: `#EBF0F5`
|
|
92
|
+
- Text: `#040505`
|
|
93
|
+
- Radius: 10px
|
|
94
|
+
- Padding: 13px
|
|
95
|
+
- Height: 48px
|
|
96
|
+
- Font: 13px / 700
|
|
97
|
+
|
|
98
|
+
**Store button (dark)**
|
|
99
|
+
- Background: `#040505`
|
|
100
|
+
- Text: `#FFFFFF`
|
|
101
|
+
- Radius: 10px
|
|
102
|
+
- Padding: 13px
|
|
103
|
+
- Height: 48px
|
|
104
|
+
- Font: 13px / 700
|
|
105
|
+
|
|
106
|
+
### Chip / Toggle
|
|
107
|
+
|
|
108
|
+
**Filter chip (default)**
|
|
109
|
+
- Background: `#FFFFFF`
|
|
110
|
+
- Text: `#040505`
|
|
111
|
+
- Border: 1px solid `#DDE4EB`
|
|
112
|
+
- Radius: 6px
|
|
113
|
+
- Padding: 6px 12px
|
|
114
|
+
- Height: 32px
|
|
115
|
+
- Font: 13px / 500
|
|
116
|
+
- Active: border 1px solid `#040505`, font-weight 700
|
|
117
|
+
|
|
118
|
+
### Icon button
|
|
119
|
+
|
|
120
|
+
**Circular**
|
|
121
|
+
- Background: `rgba(0,0,0,0.4)`
|
|
122
|
+
- Radius: 50%
|
|
123
|
+
- Padding: 5px
|
|
124
|
+
|
|
125
|
+
---
|
|
126
|
+
**Verified:** 2026-06-03
|
|
127
|
+
**Tier 1 sources:** https://coinonecorp.com/company/brand (official BI guideline, brand-owned), https://coinone.co.kr (live exchange site, brand-owned), https://image-public.coinone.co.kr/download/corphome/coinone_guide_4.0.pdf (official brand guideline PDF v4.0, brand-owned)
|
|
128
|
+
**Tier 2 sources:** getdesign.md/coinone — NOT LISTED. refero ?q=coinone — no Coinone-specific result. Tier 1 carries the evidence per KR regional-source rule.
|
|
129
|
+
**Conflicts unresolved:** BI "Coinone Blue" main is `#006BD6`; the live product applies `#0B59D5` to filled CTAs and `#1772F8` to outline emphasis — recorded as applied shades of the same identity blue, not a conflict.
|
|
130
|
+
|
|
131
|
+
## 5. Layout Principles
|
|
132
|
+
|
|
133
|
+
- Marketing/onboarding: centered, generous vertical rhythm, single-column hero with one primary blue CTA.
|
|
134
|
+
- App/exchange: dense multi-pane (market list · chart · order form), right-aligned numeric columns, thin neutral dividers `#DDE4EB`.
|
|
135
|
+
- 8px spacing base; controls cluster at 8/12/18px gaps.
|
|
136
|
+
- White surfaces dominate; sectioning by border and spacing rather than heavy cards.
|
|
137
|
+
|
|
138
|
+
## 6. Depth & Elevation
|
|
139
|
+
|
|
140
|
+
- Low elevation overall: flat white surfaces, 1px `#DDE4EB` borders do most of the separation.
|
|
141
|
+
- Radius scale: 3px (inline tags) · 6px (chips) · 8px (buttons/cards) · 10px (store/large) · 50% (icon).
|
|
142
|
+
- Shadows reserved for floating menus / modals, kept soft and short.
|
|
143
|
+
|
|
144
|
+
## 7. Do's and Don'ts
|
|
145
|
+
|
|
146
|
+
### Do
|
|
147
|
+
- Use one confident blue for the single primary action per view.
|
|
148
|
+
- Keep trading numerals dense, right-aligned, and weighted when they change.
|
|
149
|
+
- Respect Korean market color convention (red = up, blue = down) in price contexts.
|
|
150
|
+
- Lean on borders and spacing for structure; keep surfaces flat and white.
|
|
151
|
+
|
|
152
|
+
### Don't
|
|
153
|
+
- Stack multiple filled-blue CTAs competing in one viewport.
|
|
154
|
+
- Introduce shadow-heavy cards in trading views — it slows scanning.
|
|
155
|
+
- Recolor the identity blue toward teal/purple; stay within the Coinone Blue family.
|
|
156
|
+
- Use red/green for price direction (that's a Western convention; KR is red-up/blue-down).
|
|
157
|
+
|
|
158
|
+
## 8. Responsive Behavior
|
|
159
|
+
|
|
160
|
+
- Marketing pages collapse to single column; CTA goes full-width with the same 8px radius.
|
|
161
|
+
- Exchange UI is desktop-dense; mobile app reflows panes into stacked tabs (markets → chart → order).
|
|
162
|
+
- Touch targets ≥ 44px on app surfaces; 48–49px primary buttons translate cleanly to mobile.
|
|
163
|
+
|
|
164
|
+
## 9. Agent Prompt Guide
|
|
165
|
+
|
|
166
|
+
When generating Coinone-style UI: white background, near-black `#040505` text, exactly one filled blue (`#0B59D5`) primary action with 8px radius and 15px/700 label, outline secondaries with `#DDE4EB` borders. Keep it flat and bordered, dense in data views, calm in marketing. For price/market data use KR convention (red up, blue down). Use `#1772F8`/`#0090FF` only as sparing emphasis, never as a second competing CTA.
|
|
167
|
+
|
|
168
|
+
## 10. Voice & Tone
|
|
169
|
+
|
|
170
|
+
Coinone's voice is **steady, plain, and reassuring** — a regulated exchange explaining money clearly, not hyping coins.
|
|
171
|
+
|
|
172
|
+
| Do | Don't |
|
|
173
|
+
|---|---|
|
|
174
|
+
| "30초면 가입 완료" — concrete, low-friction | "지금 안 사면 후회!" — FOMO/hype |
|
|
175
|
+
| Explain risk and fees plainly | Bury terms or over-promise returns |
|
|
176
|
+
| Calm, confident, second-person | Slangy crypto-degen tone |
|
|
177
|
+
|
|
178
|
+
Voice samples (illustrative, derived from live copy):
|
|
179
|
+
- "딱 30초면 완료할 수 있어요!" (signup nudge — friendly, concrete)
|
|
180
|
+
- "스마트 트레이딩 바로가기" (feature CTA — direct, plain)
|
|
181
|
+
- "방문 상담 예약하기" (support — calm, service-oriented)
|
|
182
|
+
|
|
183
|
+
## 11. Brand Narrative
|
|
184
|
+
|
|
185
|
+
Founded in 2014, Coinone is one of Korea's first-generation crypto exchanges and has framed itself around "connecting the world and technology" (세상과 기술을 연결하다). Its logo guideline describes the mark as carrying "the infinite possibilities of connection." Over a decade it has leaned into trust and compliance as differentiators in a heavily regulated market, while pushing automation features (AI grid / smart trading) to stay competitive with larger rivals. The design language reflects that posture: institutional blue, plain language, safety-first surfaces.
|
|
186
|
+
|
|
187
|
+
## 12. Principles
|
|
188
|
+
|
|
189
|
+
1. **Trust before excitement.** — *UI implication:* calm white surfaces, one blue, no hype color.
|
|
190
|
+
2. **Clarity of money.** — *UI implication:* plain copy, explicit fees/states, legible dense numerals.
|
|
191
|
+
3. **One decisive action.** — *UI implication:* a single filled-blue CTA per view.
|
|
192
|
+
4. **Speed in data, calm in marketing.** — *UI implication:* dense trading panes, airy onboarding.
|
|
193
|
+
5. **Stay within the identity blue.** — *UI implication:* blue family only for brand/primary; grays carry the rest.
|
|
194
|
+
|
|
195
|
+
## 13. Personas
|
|
196
|
+
|
|
197
|
+
*Illustrative archetypes for design context, not official user research.*
|
|
198
|
+
|
|
199
|
+
- **Cautious first-timer** — wants a safe, regulated place to buy a little crypto; needs plain steps and visible trust signals.
|
|
200
|
+
- **Active retail trader** — lives in the order book; values dense data, fast toggles, reliable numerals.
|
|
201
|
+
- **Automation seeker** — drawn to AI grid / smart trading; wants set-and-forget tooling explained simply.
|
|
202
|
+
|
|
203
|
+
## 14. States
|
|
204
|
+
|
|
205
|
+
- **Empty:** "보유 자산이 없어요" — quiet muted `#6B7684` text + a single blue "입금하기" CTA.
|
|
206
|
+
- **Loading:** skeleton rows in trading tables; spinner inside buttons on submit.
|
|
207
|
+
- **Error (validation):** inline red helper under field; field border turns warning red.
|
|
208
|
+
- **Error (network):** non-blocking toast, retriable; data panes keep last values dimmed.
|
|
209
|
+
- **Success:** brief confirmation toast / checkmark; return to the relevant balance or order view.
|
|
210
|
+
- **Skeleton:** gray `#EEEFF0` placeholder blocks matching final row layout.
|
|
211
|
+
- **Disabled:** muted `#CFD0D3` fill, no border emphasis, non-interactive cursor.
|
|
212
|
+
|
|
213
|
+
## 15. Motion & Easing
|
|
214
|
+
|
|
215
|
+
- Duration scale: 120ms (micro hover/press) · 200ms (toggles, toasts) · 300ms (page/section transitions).
|
|
216
|
+
- Easing: standard ease-out for entrances, ease-in-out for toggles.
|
|
217
|
+
- Price/number changes flash briefly (red up / blue down) then settle — motion communicates direction, never decorates.
|
|
218
|
+
- Keep motion minimal in trading views to avoid distracting from live data.
|