/ references / design-principles.md
design-principles.md
1 # Design Principles: 10 Core Decision Framework 2 3 > **Load when:** Design reviews, principle conflicts, tradeoff decisions, need to explain design reasoning 4 > **Skip when:** Simple execution, clear specs, no judgment needed 5 > **Why it matters:** Provides consistent decision framework, resolves principle conflicts, builds design judgment 6 > **Typical failure it prevents:** Subjective guessing, unable to explain decisions, not knowing how to choose when principles conflict 7 8 The 10 core principles are cc-design's decision framework. They are not rules, they are judgment tools. When facing choices, use principles to guide decisions. 9 10 --- 11 12 ## cc-design's 10 Core Principles 13 14 ### 1. Clarity Over Beauty 15 16 **Principle:** If you must choose between clarity and beauty, choose clarity. 17 18 **Reasoning:** 19 - Design's primary goal is to convey information, not to decorate 20 - Users come to complete tasks, not to admire design 21 - Beautiful but unclear = failed design 22 23 **Application:** 24 - **Font size**: Readability > visual compactness (minimum 14px body text) 25 - **Contrast**: Information hierarchy > visual harmony (sufficient contrast ratio) 26 - **Whitespace**: Reading rhythm > space efficiency (prefer more whitespace) 27 - **Animation**: Functional feedback > visual showmanship (purposeful animation) 28 29 **Exception:** 30 - Brand expression designs (art posters, concept showcases) 31 - Emotion-priority scenarios (emotional design) 32 - But even in exceptions, ensure basic readability 33 34 **Test:** 35 - Can users find core information within 3 seconds? 36 - Is information hierarchy immediately clear? 37 - Is it still usable without decoration? 38 39 --- 40 41 ### 2. Context Over Convention 42 43 **Principle:** User's design system > general best practices. 44 45 **Reasoning:** 46 - Consistency is more important than "correctness" 47 - User's existing system is their context 48 - Cost of breaking consistency > benefit of local optimization 49 50 **Application:** 51 - **Read codebase first**: Copy user's hex/px values, don't guess 52 - **Follow naming**: If user calls it `primary-blue`, use that name 53 - **Keep patterns**: If user uses cards, keep using cards 54 - **Respect specs**: Don't argue with "Material Design says it should be this way" 55 56 **Exception:** 57 - User's system clearly violates usability (e.g., 12px body text, 3:1 contrast ratio) 58 - User explicitly requests system improvements 59 - But suggest first, change only after agreement 60 61 **Test:** 62 - Does this design fit harmoniously into the user's product? 63 - Can the user recognize this as their style? 64 - Does it reuse the user's tokens and components? 65 66 --- 67 68 ### 3. Problem Definition Over Solutions 69 70 **Principle:** Ask "why" first, then "how". 71 72 **Reasoning:** 73 - Without goal definition, there's no real design, only decoration 74 - Wrong problem definition → correct execution is still failure 75 - Problem definition determines evaluation criteria 76 77 **Application:** 78 - **P1 principle**: Ask questions in batch for new tasks, don't jump in 79 - **Junior Designer Mode**: Write assumptions before code 80 - **Before each design answer**: What problem? For whom? Success criteria? 81 - **Reject vague briefs**: "Make a nice dashboard" → clarify what data to show 82 83 **Exception:** 84 - Clear small changes ("change button to blue") 85 - User has provided detailed brief 86 - But even in exceptions, confirm understanding 87 88 **Test:** 89 - Can you explain the core problem in one sentence? 90 - Can you describe target users and scenarios? 91 - Are there clear success metrics? 92 93 --- 94 95 ### 4. Validation Over Assumptions 96 97 **Principle:** Validate with data and testing, don't rely on intuition. 98 99 **Reasoning:** 100 - Designer's "feeling" is often wrong 101 - Unvalidated assumptions = risk 102 - Validation is the only way to learn and improve 103 104 **Application:** 105 - **P0 principle**: Fact validation (brand, product, pricing, technology) 106 - **Three-phase validation**: Structure → Visual → Excellence 107 - **Pre-screenshot checks**: Console errors, responsive, real content 108 - **Pre-delivery testing**: Core flow, edge cases, different devices 109 110 **Exception:** 111 - Time-constrained prototyping (but label assumptions) 112 - Exploratory design (but clarify it's exploration) 113 - But validate assumptions as soon as possible 114 115 **Test:** 116 - Is this design based on facts or assumptions? 117 - Have assumptions been validated? 118 - Is there data supporting key decisions? 119 120 --- 121 122 ### 5. System Over Local 123 124 **Principle:** Overall consistency > local optimization. 125 126 **Reasoning:** 127 - Locally brilliant but globally chaotic = failed design 128 - System thinking reduces cognitive load 129 - Consistency builds trust and predictability 130 131 **Application:** 132 - **Spacing scale**: 4/8/12/16/24/32/48/64, not random values 133 - **Type scale**: 1.25 ratio, not arbitrary font sizes 134 - **Font weights**: 2-3 weights, not 5 135 - **Colors**: 2-3 primary colors, not a rainbow 136 - **Components**: Reuse existing components, don't redesign every time 137 138 **Exception:** 139 - Clear visual focus (hero section) can break rules 140 - Brand showcase needs special treatment 141 - But have clear reasoning and document the exception 142 143 **Test:** 144 - Does this design use system tokens? 145 - Is it consistent with other pages? 146 - If copied 10 times, would it become chaotic? 147 148 --- 149 150 ### 6. Content Over Form 151 152 **Principle:** Organize content first, then design form. 153 154 **Reasoning:** 155 - Form serves content, not the other way around 156 - Content determines structure and visuals 157 - Form without content = empty visual games 158 159 **Application:** 160 - **Information architecture first**: Filter, group, sequence 161 - **Then visual design**: Use visuals to express information hierarchy 162 - **Don't force fit**: Don't break content to fit bento grid 163 - **No filler content**: No content = no placeholder 164 165 **Exception:** 166 - Brand expression designs (form is the content) 167 - Visual exploration phase (but fill in real content soon) 168 - But clarify it's an exception 169 170 **Test:** 171 - Is content organized? 172 - Does form serve content? 173 - Does form have meaning without content? 174 175 --- 176 177 ### 7. Subtraction Over Addition 178 179 **Principle:** Remove what you can, don't pile on. 180 181 **Reasoning:** 182 - Every element adds cognitive load 183 - Less is more 184 - Removing is the hardest design decision 185 186 **Application:** 187 - **No filler content**: No actual content = no placeholder 188 - **Remove decoration**: Elements that don't carry information can be removed 189 - **Whitespace > filling**: Prefer more whitespace, don't stuff everything in 190 - **One focus per screen**: Don't try to show everything on one screen 191 192 **Exception:** 193 - Designs requiring richness (e-commerce, media) 194 - Brand-required decorative elements 195 - But ensure core information is not affected 196 197 **Test:** 198 - Does every element have a clear purpose? 199 - Would removing it affect understanding? 200 - Are there unnecessary decorations? 201 202 --- 203 204 ### 8. Natural Over Flashy 205 206 **Principle:** Interaction should follow intuition, don't design for cool factor. 207 208 **Reasoning:** 209 - Users don't care about your technology, only about completing tasks 210 - Natural interaction = users don't notice the interaction 211 - Flashiness increases learning cost 212 213 **Application:** 214 - **Buttons in expected places**: Don't change basic patterns for innovation 215 - **Timely clear feedback**: Don't use complex animations to delay feedback 216 - **Don't overdo animation**: Animation serves function, not showmanship 217 - **Follow platform norms**: iOS uses iOS patterns, Web uses Web patterns 218 219 **Exception:** 220 - Brand showcase animations (but can't affect core functionality) 221 - Innovative products (but reduce learning cost) 222 - But ensure basic usability 223 224 **Test:** 225 - Can a first-time user guess how to operate? 226 - Does animation have a clear functional purpose? 227 - Does it follow platform norms? 228 229 --- 230 231 ### 9. Consistency Over Innovation 232 233 **Principle:** Follow platform norms and user habits. 234 235 **Reasoning:** 236 - Consistency reduces learning cost 237 - User habits are precious assets 238 - Innovation needs sufficient justification 239 240 **Application:** 241 - **iOS uses iOS norms**: Don't use Material Design on iOS 242 - **Web uses Web conventions**: Links are blue and underlined, buttons are solid 243 - **Don't reinvent navigation**: Users know top-left is back 244 - **Maintain internal consistency**: Keep consistency within same product 245 246 **Exception:** 247 - Clear brand differentiation needs 248 - Innovation significantly improves experience 249 - But reduce learning cost, provide guidance 250 251 **Test:** 252 - Does this design follow platform norms? 253 - Is it consistent with user habits? 254 - Does the innovation have sufficient justification? 255 256 --- 257 258 ### 10. Scalability Over Perfection 259 260 **Principle:** Design should work long-term, not just be perfect now. 261 262 **Reasoning:** 263 - Design is a system, not an artwork 264 - Perfect but unscalable = technical debt 265 - Scalability is long-term value 266 267 **Application:** 268 - **Build design system**: Tokens, components, specs 269 - **Use CSS variables**: Don't hardcode values 270 - **Component thinking**: Reusable, composable 271 - **Document**: Record decisions and rules 272 273 **Exception:** 274 - One-off marketing pages (but still consider reuse) 275 - Quick prototypes (but label temporary solutions) 276 - But systematize as soon as possible 277 278 **Test:** 279 - Can this design be reused? 280 - Can it scale to other scenarios? 281 - Are there clear rules? 282 283 --- 284 285 ## Principle Priority 286 287 When principles conflict, follow this order: 288 289 1. **Clarity** > Beauty 290 2. **Context** > Convention 291 3. **Problem Definition** > Solutions 292 4. **Validation** > Assumptions 293 5. **System** > Local 294 6. **Content** > Form 295 7. **Subtraction** > Addition 296 8. **Natural** > Flashy 297 9. **Consistency** > Innovation 298 10. **Scalability** > Perfection 299 300 **Note:** This is not absolute; judge based on specific situations. 301 302 --- 303 304 ## Principle Conflict Case Studies 305 306 ### Case 1: Clarity vs Beauty 307 308 **Scenario:** Large title looks beautiful, but information hierarchy is unclear 309 310 **Conflict:** 311 - Beauty: 48px large title has strong visual impact 312 - Clarity: Title too large, body text relatively too small, hierarchy unclear 313 314 **Decision:** Reduce title to 32px, ensure hierarchy clarity 315 316 **Reasoning:** Principle 1 (Clarity > Beauty) 317 318 --- 319 320 ### Case 2: Context vs Convention 321 322 **Scenario:** User's system uses 12px body text, but best practice is 14px 323 324 **Conflict:** 325 - Context: Keep 12px to maintain consistency 326 - Convention: 14px has better readability 327 328 **Decision:** Suggest improvement first; if user insists, keep 12px 329 330 **Reasoning:** Principle 2 (Context > Convention), but suggest improvements 331 332 --- 333 334 ### Case 3: System vs Local 335 336 **Scenario:** 12px works better for this page, but system uses 14px 337 338 **Conflict:** 339 - Local: 12px is more visually compact on this page 340 - System: 14px is the system standard 341 342 **Decision:** Keep 14px, maintain system consistency 343 344 **Reasoning:** Principle 5 (System > Local) 345 346 --- 347 348 ### Case 4: Brand vs Interaction 349 350 **Scenario:** Brand requires special font, but readability is poor 351 352 **Conflict:** 353 - Brand: Special font embodies brand personality 354 - Interaction: Poor readability affects usage 355 356 **Decision:** Use brand font for titles, readable font for body text 357 358 **Reasoning:** Principle 1 (Clarity > Beauty) + Principle 8 (Natural > Flashy) 359 360 --- 361 362 ### Case 5: Innovation vs Consistency 363 364 **Scenario:** Want to use new navigation pattern, but users are accustomed to traditional 365 366 **Conflict:** 367 - Innovation: New pattern is more efficient 368 - Consistency: Users are familiar with traditional pattern 369 370 **Decision:** If new pattern significantly improves experience, innovate but provide guidance 371 372 **Reasoning:** Principle 9 (Consistency > Innovation), but has exceptions 373 374 --- 375 376 ## Design Decision Framework 377 378 When facing design decisions, follow these steps: 379 380 ### 1. Clarify the Problem 381 382 **Ask:** What problem does this decision solve? 383 384 **Check:** Principle 3 (Problem Definition > Solutions) 385 386 --- 387 388 ### 2. Check Context 389 390 **Ask:** Are there contextual constraints? 391 392 **Check:** 393 - User's design system 394 - Platform norms 395 - Brand requirements 396 - Technical limitations 397 398 **Apply:** Principle 2 (Context > Convention) 399 400 --- 401 402 ### 3. Evaluate Clarity 403 404 **Ask:** Is it clear? 405 406 **Check:** 407 - Is information hierarchy clear 408 - Can users understand quickly 409 - Is there ambiguity 410 411 **Apply:** Principle 1 (Clarity > Beauty) 412 413 --- 414 415 ### 4. Check Consistency 416 417 **Ask:** Is it consistent? 418 419 **Check:** 420 - Consistent with other parts of the system 421 - Consistent with platform norms 422 - Consistent with user habits 423 424 **Apply:** Principle 5 (System > Local) + Principle 9 (Consistency > Innovation) 425 426 --- 427 428 ### 5. Validate Assumptions 429 430 **Ask:** Is it verifiable? 431 432 **Check:** 433 - Based on facts or assumptions 434 - Have assumptions been validated 435 - Is there data support 436 437 **Apply:** Principle 4 (Validation > Assumptions) 438 439 --- 440 441 ### 6. Consider Scalability 442 443 **Ask:** Is it scalable? 444 445 **Check:** 446 - Can it be reused 447 - Can it scale to other scenarios 448 - Are there clear rules 449 450 **Apply:** Principle 10 (Scalability > Perfection) 451 452 --- 453 454 ## Conditions for Breaking Principles 455 456 Principles are not rules; they can be broken, but must satisfy: 457 458 ### 1. Goal Layer Explicitly Requires 459 460 **Examples:** 461 - Goal is "brand showcase" → Brand > Interaction 462 - Goal is "visual impact" → Visual > Information 463 - Goal is "innovative experience" → Innovation > Consistency 464 465 **Prerequisite:** Goal layer has clear justification 466 467 --- 468 469 ### 2. Sufficient Reasoning 470 471 **Examples:** 472 - Breaking consistency: Because this scenario is special, consistency would reduce experience 473 - Breaking system: Because this is a visual focus, needs special treatment 474 - Breaking convention: Because innovation significantly improves efficiency 475 476 **Prerequisite:** Can clearly explain why the break is needed 477 478 --- 479 480 ### 3. Understanding Consequences 481 482 **Examples:** 483 - Breaking consistency → Increases learning cost 484 - Breaking system → Increases maintenance cost 485 - Breaking convention → Requires user education 486 487 **Prerequisite:** After weighing, determined to be worth it 488 489 --- 490 491 ### 4. Documenting Why 492 493 **Examples:** 494 - Record in code comments 495 - Explain in design documentation 496 - Mark as exception in design system 497 498 **Prerequisite:** Let future self and team understand 499 500 --- 501 502 ## Relationship to Other Documents 503 504 - **design-philosophy.md**: Philosophical foundation of principles 505 - **design-thinking-framework.md**: Application of principles in the 8-layer framework 506 - **design-excellence.md**: Embodiment of principles in visual design 507 - **content-guidelines.md**: Rules of principles in content design 508 - **SKILL.md P0/P1/P2**: Operationalization of principles 509 510 --- 511 512 ## Remember 513 514 1. **10 Principles**: Clarity, Context, Problem Definition, Validation, System, Content, Subtraction, Natural, Consistency, Scalability 515 2. **Priority**: Clarity > Context > Problem Definition > Validation > System > Content > Subtraction > Natural > Consistency > Scalability 516 3. **Decision Framework**: Problem → Context → Clarity → Consistency → Validation → Scalability 517 4. **Breaking Conditions**: Goal requires + Sufficient reasoning + Understanding consequences + Documentation 518 5. **Principles are not rules**: They are judgment tools, not rigid regulations 519 520 **Principles guide judgment, judgment builds intuition.**