@paulojalowyj/openkit 0.1.1
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/.opencode/ARCHITECTURE.md +150 -0
- package/.opencode/LICENSE +21 -0
- package/.opencode/bin/cli.js +213 -0
- package/.opencode/commands/README.md +273 -0
- package/.opencode/commands/analyze.md +64 -0
- package/.opencode/commands/brainstorm.md +186 -0
- package/.opencode/commands/checklist.md +62 -0
- package/.opencode/commands/clarify.md +40 -0
- package/.opencode/commands/context.md +68 -0
- package/.opencode/commands/create.md +70 -0
- package/.opencode/commands/debug.md +160 -0
- package/.opencode/commands/deploy.md +244 -0
- package/.opencode/commands/doc.md +45 -0
- package/.opencode/commands/engineer.md +483 -0
- package/.opencode/commands/impl.md +242 -0
- package/.opencode/commands/plan.md +250 -0
- package/.opencode/commands/preview.md +87 -0
- package/.opencode/commands/specify.md +66 -0
- package/.opencode/commands/status.md +103 -0
- package/.opencode/commands/tasks.md +58 -0
- package/.opencode/commands/test.md +104 -0
- package/.opencode/commands/ui-ux.md +216 -0
- package/.opencode/prompts/backend-specialist.md +315 -0
- package/.opencode/prompts/chat.md +36 -0
- package/.opencode/prompts/database-architect.md +244 -0
- package/.opencode/prompts/debugger.md +244 -0
- package/.opencode/prompts/devops-engineer.md +259 -0
- package/.opencode/prompts/documentation-writer.md +121 -0
- package/.opencode/prompts/explorer-agent.md +92 -0
- package/.opencode/prompts/frontend-specialist.md +608 -0
- package/.opencode/prompts/mobile-developer.md +393 -0
- package/.opencode/prompts/orchestrator.md +472 -0
- package/.opencode/prompts/penetration-tester.md +205 -0
- package/.opencode/prompts/performance-optimizer.md +204 -0
- package/.opencode/prompts/product-owner.md +113 -0
- package/.opencode/prompts/project-planner.md +413 -0
- package/.opencode/prompts/security-auditor.md +187 -0
- package/.opencode/prompts/seo-specialist.md +128 -0
- package/.opencode/prompts/test-engineer.md +190 -0
- package/.opencode/rules/AGENT_TEMPLATE.md +391 -0
- package/.opencode/rules/MASTER.md +272 -0
- package/.opencode/rules/README.md +266 -0
- package/.opencode/rules/TODOLIST_EXAMPLES.md +675 -0
- package/.opencode/rules/TODOLIST_PROTOCOL.md +495 -0
- package/.opencode/rules/TOOL_USAGE.md +731 -0
- package/.opencode/scripts/auto_preview.py +100 -0
- package/.opencode/scripts/checklist.py +217 -0
- package/.opencode/scripts/session_manager.py +225 -0
- package/.opencode/scripts/verify_all.py +403 -0
- package/.opencode/skills/api-patterns/SKILL.md +80 -0
- package/.opencode/skills/api-patterns/api-style.md +42 -0
- package/.opencode/skills/api-patterns/auth.md +24 -0
- package/.opencode/skills/api-patterns/documentation.md +26 -0
- package/.opencode/skills/api-patterns/graphql.md +41 -0
- package/.opencode/skills/api-patterns/rate-limiting.md +31 -0
- package/.opencode/skills/api-patterns/response.md +37 -0
- package/.opencode/skills/api-patterns/rest.md +40 -0
- package/.opencode/skills/api-patterns/scripts/api_validator.py +211 -0
- package/.opencode/skills/api-patterns/security-testing.md +122 -0
- package/.opencode/skills/api-patterns/trpc.md +41 -0
- package/.opencode/skills/api-patterns/versioning.md +22 -0
- package/.opencode/skills/app-builder/SKILL.md +101 -0
- package/.opencode/skills/app-builder/agent-coordination.md +71 -0
- package/.opencode/skills/app-builder/feature-building.md +53 -0
- package/.opencode/skills/app-builder/project-detection.md +34 -0
- package/.opencode/skills/app-builder/scaffolding.md +116 -0
- package/.opencode/skills/app-builder/tech-stack.md +40 -0
- package/.opencode/skills/app-builder/templates/SKILL.md +39 -0
- package/.opencode/skills/app-builder/templates/astro-static/TEMPLATE.md +76 -0
- package/.opencode/skills/app-builder/templates/chrome-extension/TEMPLATE.md +92 -0
- package/.opencode/skills/app-builder/templates/cli-tool/TEMPLATE.md +88 -0
- package/.opencode/skills/app-builder/templates/electron-desktop/TEMPLATE.md +88 -0
- package/.opencode/skills/app-builder/templates/express-api/TEMPLATE.md +83 -0
- package/.opencode/skills/app-builder/templates/flutter-app/TEMPLATE.md +90 -0
- package/.opencode/skills/app-builder/templates/monorepo-turborepo/TEMPLATE.md +90 -0
- package/.opencode/skills/app-builder/templates/nextjs-fullstack/TEMPLATE.md +81 -0
- package/.opencode/skills/app-builder/templates/nextjs-saas/TEMPLATE.md +100 -0
- package/.opencode/skills/app-builder/templates/nextjs-static/TEMPLATE.md +106 -0
- package/.opencode/skills/app-builder/templates/nuxt-app/TEMPLATE.md +100 -0
- package/.opencode/skills/app-builder/templates/python-fastapi/TEMPLATE.md +82 -0
- package/.opencode/skills/app-builder/templates/react-native-app/TEMPLATE.md +93 -0
- package/.opencode/skills/architecture/SKILL.md +55 -0
- package/.opencode/skills/architecture/context-discovery.md +43 -0
- package/.opencode/skills/architecture/examples.md +94 -0
- package/.opencode/skills/architecture/pattern-selection.md +68 -0
- package/.opencode/skills/architecture/patterns-reference.md +50 -0
- package/.opencode/skills/architecture/trade-off-analysis.md +77 -0
- package/.opencode/skills/bash-linux/SKILL.md +199 -0
- package/.opencode/skills/behavioral-modes/SKILL.md +242 -0
- package/.opencode/skills/brainstorming/SKILL.md +163 -0
- package/.opencode/skills/brainstorming/dynamic-questioning.md +350 -0
- package/.opencode/skills/clean-code/SKILL.md +201 -0
- package/.opencode/skills/code-review-checklist/SKILL.md +109 -0
- package/.opencode/skills/database-design/SKILL.md +73 -0
- package/.opencode/skills/database-design/database-selection.md +43 -0
- package/.opencode/skills/database-design/indexing.md +39 -0
- package/.opencode/skills/database-design/migrations.md +48 -0
- package/.opencode/skills/database-design/optimization.md +36 -0
- package/.opencode/skills/database-design/orm-selection.md +30 -0
- package/.opencode/skills/database-design/schema-design.md +56 -0
- package/.opencode/skills/database-design/scripts/schema_validator.py +172 -0
- package/.opencode/skills/deployment-procedures/SKILL.md +241 -0
- package/.opencode/skills/documentation-templates/SKILL.md +279 -0
- package/.opencode/skills/frontend-design/SKILL.md +446 -0
- package/.opencode/skills/frontend-design/animation-guide.md +331 -0
- package/.opencode/skills/frontend-design/color-system.md +311 -0
- package/.opencode/skills/frontend-design/data/charts.csv +26 -0
- package/.opencode/skills/frontend-design/data/colors.csv +97 -0
- package/.opencode/skills/frontend-design/data/icons.csv +101 -0
- package/.opencode/skills/frontend-design/data/landing.csv +31 -0
- package/.opencode/skills/frontend-design/data/products.csv +97 -0
- package/.opencode/skills/frontend-design/data/prompts.csv +24 -0
- package/.opencode/skills/frontend-design/data/react-performance.csv +45 -0
- package/.opencode/skills/frontend-design/data/stacks/flutter.csv +53 -0
- package/.opencode/skills/frontend-design/data/stacks/html-tailwind.csv +56 -0
- package/.opencode/skills/frontend-design/data/stacks/jetpack-compose.csv +53 -0
- package/.opencode/skills/frontend-design/data/stacks/nextjs.csv +53 -0
- package/.opencode/skills/frontend-design/data/stacks/nuxt-ui.csv +51 -0
- package/.opencode/skills/frontend-design/data/stacks/nuxtjs.csv +59 -0
- package/.opencode/skills/frontend-design/data/stacks/react-native.csv +52 -0
- package/.opencode/skills/frontend-design/data/stacks/react.csv +54 -0
- package/.opencode/skills/frontend-design/data/stacks/shadcn.csv +61 -0
- package/.opencode/skills/frontend-design/data/stacks/svelte.csv +54 -0
- package/.opencode/skills/frontend-design/data/stacks/swiftui.csv +51 -0
- package/.opencode/skills/frontend-design/data/stacks/vue.csv +50 -0
- package/.opencode/skills/frontend-design/data/styles.csv +59 -0
- package/.opencode/skills/frontend-design/data/typography.csv +58 -0
- package/.opencode/skills/frontend-design/data/ui-reasoning.csv +101 -0
- package/.opencode/skills/frontend-design/data/ux-guidelines.csv +100 -0
- package/.opencode/skills/frontend-design/data/web-interface.csv +31 -0
- package/.opencode/skills/frontend-design/decision-trees.md +418 -0
- package/.opencode/skills/frontend-design/motion-graphics.md +306 -0
- package/.opencode/skills/frontend-design/scripts/accessibility_checker.py +183 -0
- package/.opencode/skills/frontend-design/scripts/core.py +258 -0
- package/.opencode/skills/frontend-design/scripts/design_system.py +1067 -0
- package/.opencode/skills/frontend-design/scripts/search.py +106 -0
- package/.opencode/skills/frontend-design/scripts/ux_audit.py +735 -0
- package/.opencode/skills/frontend-design/typography-system.md +345 -0
- package/.opencode/skills/frontend-design/ux-psychology.md +541 -0
- package/.opencode/skills/frontend-design/visual-effects.md +383 -0
- package/.opencode/skills/geo-fundamentals/SKILL.md +156 -0
- package/.opencode/skills/geo-fundamentals/scripts/geo_checker.py +289 -0
- package/.opencode/skills/i18n-localization/SKILL.md +154 -0
- package/.opencode/skills/i18n-localization/scripts/i18n_checker.py +241 -0
- package/.opencode/skills/intelligent-routing/SKILL.md +335 -0
- package/.opencode/skills/lint-and-validate/SKILL.md +45 -0
- package/.opencode/skills/lint-and-validate/scripts/lint_runner.py +172 -0
- package/.opencode/skills/lint-and-validate/scripts/type_coverage.py +173 -0
- package/.opencode/skills/mobile-design/SKILL.md +394 -0
- package/.opencode/skills/mobile-design/decision-trees.md +516 -0
- package/.opencode/skills/mobile-design/mobile-backend.md +491 -0
- package/.opencode/skills/mobile-design/mobile-color-system.md +420 -0
- package/.opencode/skills/mobile-design/mobile-debugging.md +122 -0
- package/.opencode/skills/mobile-design/mobile-design-thinking.md +357 -0
- package/.opencode/skills/mobile-design/mobile-navigation.md +458 -0
- package/.opencode/skills/mobile-design/mobile-performance.md +767 -0
- package/.opencode/skills/mobile-design/mobile-testing.md +356 -0
- package/.opencode/skills/mobile-design/mobile-typography.md +433 -0
- package/.opencode/skills/mobile-design/platform-android.md +666 -0
- package/.opencode/skills/mobile-design/platform-ios.md +561 -0
- package/.opencode/skills/mobile-design/scripts/mobile_audit.py +670 -0
- package/.opencode/skills/mobile-design/touch-psychology.md +537 -0
- package/.opencode/skills/nextjs-react-expert/1-async-eliminating-waterfalls.md +312 -0
- package/.opencode/skills/nextjs-react-expert/2-bundle-bundle-size-optimization.md +240 -0
- package/.opencode/skills/nextjs-react-expert/3-server-server-side-performance.md +490 -0
- package/.opencode/skills/nextjs-react-expert/4-client-client-side-data-fetching.md +264 -0
- package/.opencode/skills/nextjs-react-expert/5-rerender-re-render-optimization.md +581 -0
- package/.opencode/skills/nextjs-react-expert/6-rendering-rendering-performance.md +432 -0
- package/.opencode/skills/nextjs-react-expert/7-js-javascript-performance.md +684 -0
- package/.opencode/skills/nextjs-react-expert/8-advanced-advanced-patterns.md +150 -0
- package/.opencode/skills/nextjs-react-expert/SKILL.md +267 -0
- package/.opencode/skills/nextjs-react-expert/scripts/convert_rules.py +222 -0
- package/.opencode/skills/nextjs-react-expert/scripts/react_performance_checker.py +252 -0
- package/.opencode/skills/parallel-agents/SKILL.md +175 -0
- package/.opencode/skills/performance-profiling/SKILL.md +143 -0
- package/.opencode/skills/performance-profiling/scripts/lighthouse_audit.py +76 -0
- package/.opencode/skills/plan-writing/SKILL.md +176 -0
- package/.opencode/skills/python-patterns/SKILL.md +462 -0
- package/.opencode/skills/red-team-tactics/SKILL.md +199 -0
- package/.opencode/skills/seo-fundamentals/SKILL.md +129 -0
- package/.opencode/skills/seo-fundamentals/scripts/seo_checker.py +222 -0
- package/.opencode/skills/server-management/SKILL.md +161 -0
- package/.opencode/skills/stack-selection/SKILL.md +448 -0
- package/.opencode/skills/systematic-debugging/SKILL.md +109 -0
- package/.opencode/skills/tailwind-patterns/SKILL.md +269 -0
- package/.opencode/skills/tdd-workflow/SKILL.md +149 -0
- package/.opencode/skills/testing-patterns/SKILL.md +178 -0
- package/.opencode/skills/testing-patterns/scripts/test_runner.py +219 -0
- package/.opencode/skills/vulnerability-scanner/SKILL.md +276 -0
- package/.opencode/skills/vulnerability-scanner/checklists.md +121 -0
- package/.opencode/skills/vulnerability-scanner/scripts/security_scan.py +458 -0
- package/.opencode/skills/web-design-guidelines/SKILL.md +57 -0
- package/.opencode/skills/webapp-testing/SKILL.md +187 -0
- package/.opencode/skills/webapp-testing/scripts/playwright_runner.py +173 -0
- package/.opencode/templates/DOCS-ACTION_ITEMS.md +5 -0
- package/.opencode/templates/DOCS-API.md +11 -0
- package/.opencode/templates/DOCS-BACKEND.md +10 -0
- package/.opencode/templates/DOCS-CONTEXT.md +25 -0
- package/.opencode/templates/DOCS-DATABASE.md +10 -0
- package/.opencode/templates/DOCS-FRONTEND.md +11 -0
- package/.opencode/templates/DOCS-QUALITY_GATES.md +20 -0
- package/.opencode/templates/DOCS-SECURITY.md +17 -0
- package/.opencode/templates/SDD-AcceptanceCriteria.md +21 -0
- package/.opencode/templates/SDD-Checklist.md +27 -0
- package/.opencode/templates/SDD-Contracts.md +21 -0
- package/.opencode/templates/SDD-Plan.md +45 -0
- package/.opencode/templates/SDD-ProblemStatement.md +25 -0
- package/.opencode/templates/SDD-Quickstart.md +23 -0
- package/.opencode/templates/SDD-Research.md +24 -0
- package/.opencode/templates/SDD-Risks.md +16 -0
- package/.opencode/templates/SDD-Tasks.md +41 -0
- package/.opencode/templates/SDD-UserStories.md +45 -0
- package/.opencode/templates/TechStack.md +111 -0
- package/LICENSE +21 -0
- package/PACKAGE_STATUS.md +97 -0
- package/README.md +251 -0
- package/README.pt-BR.md +192 -0
- package/bin/cli.js +505 -0
- package/blueprints/fullstack/.env.example +15 -0
- package/blueprints/fullstack/AGENTS.md +3 -0
- package/blueprints/fullstack/README.md +65 -0
- package/blueprints/fullstack/backend/.dockerignore +10 -0
- package/blueprints/fullstack/backend/.python-version +1 -0
- package/blueprints/fullstack/backend/Dockerfile +33 -0
- package/blueprints/fullstack/backend/alembic.ini +40 -0
- package/blueprints/fullstack/backend/app/__init__.py +0 -0
- package/blueprints/fullstack/backend/app/api/README.md +3 -0
- package/blueprints/fullstack/backend/app/api/__init__.py +0 -0
- package/blueprints/fullstack/backend/app/celery_app.py +5 -0
- package/blueprints/fullstack/backend/app/core/README.md +3 -0
- package/blueprints/fullstack/backend/app/core/__init__.py +0 -0
- package/blueprints/fullstack/backend/app/database.py +14 -0
- package/blueprints/fullstack/backend/app/main.py +16 -0
- package/blueprints/fullstack/backend/app/models/README.md +3 -0
- package/blueprints/fullstack/backend/app/models/__init__.py +3 -0
- package/blueprints/fullstack/backend/app/models/item.py +10 -0
- package/blueprints/fullstack/backend/app/routers/__init__.py +0 -0
- package/blueprints/fullstack/backend/app/routers/items.py +20 -0
- package/blueprints/fullstack/backend/app/schemas/README.md +3 -0
- package/blueprints/fullstack/backend/app/schemas/__init__.py +0 -0
- package/blueprints/fullstack/backend/app/schemas/item.py +15 -0
- package/blueprints/fullstack/backend/app/services/item_service.py +23 -0
- package/blueprints/fullstack/backend/app/settings.py +36 -0
- package/blueprints/fullstack/backend/app/tasks/README.md +3 -0
- package/blueprints/fullstack/backend/app/tasks/__init__.py +0 -0
- package/blueprints/fullstack/backend/migrations/env.py +47 -0
- package/blueprints/fullstack/backend/migrations/versions/0001_initial_sample_data.py +31 -0
- package/blueprints/fullstack/backend/pyproject.toml +45 -0
- package/blueprints/fullstack/docker-compose.dev.yml +114 -0
- package/blueprints/fullstack/docker-compose.prod.yml +90 -0
- package/blueprints/fullstack/docs/README.md +29 -0
- package/blueprints/fullstack/docs/engineering/api/README.md +3 -0
- package/blueprints/fullstack/docs/engineering/architecture/README.md +3 -0
- package/blueprints/fullstack/docs/engineering/backend/README.md +3 -0
- package/blueprints/fullstack/docs/engineering/frontend/README.md +3 -0
- package/blueprints/fullstack/docs/engineering/security/README.md +3 -0
- package/blueprints/fullstack/docs/engineering/standards/README.md +3 -0
- package/blueprints/fullstack/frontend/.dockerignore +4 -0
- package/blueprints/fullstack/frontend/Dockerfile +23 -0
- package/blueprints/fullstack/frontend/components.json +17 -0
- package/blueprints/fullstack/frontend/index.html +12 -0
- package/blueprints/fullstack/frontend/package.json +28 -0
- package/blueprints/fullstack/frontend/src/components/README.md +3 -0
- package/blueprints/fullstack/frontend/src/components/ui/.keep +4 -0
- package/blueprints/fullstack/frontend/src/index.css +57 -0
- package/blueprints/fullstack/frontend/src/lib/README.md +3 -0
- package/blueprints/fullstack/frontend/src/lib/api.ts +1 -0
- package/blueprints/fullstack/frontend/src/lib/utils.ts +6 -0
- package/blueprints/fullstack/frontend/src/main.tsx +66 -0
- package/blueprints/fullstack/frontend/src/routes/README.md +3 -0
- package/blueprints/fullstack/frontend/src/routes/root.tsx +7 -0
- package/blueprints/fullstack/frontend/src/vite-env.d.ts +1 -0
- package/blueprints/fullstack/frontend/tailwind.config.ts +12 -0
- package/blueprints/fullstack/frontend/tsconfig.json +13 -0
- package/blueprints/fullstack/frontend/tsconfig.node.json +12 -0
- package/blueprints/fullstack/frontend/vite.config.ts +12 -0
- package/index.js +14 -0
- package/opencode.json +306 -0
- package/package.json +57 -0
- package/scripts/prepare.js +65 -0
- package/scripts/update-version.js +29 -0
|
@@ -0,0 +1,446 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: frontend-design
|
|
3
|
+
description: Design thinking and decision-making for web UI. Use when designing components, layouts, color schemes, typography, or creating aesthetic interfaces. Teaches principles, not fixed values.
|
|
4
|
+
allowed-tools: Read, Write, Edit, Glob, Grep, Bash
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Frontend Design System
|
|
8
|
+
|
|
9
|
+
> **Philosophy:** Every pixel has purpose. Restraint is luxury. User psychology drives decisions.
|
|
10
|
+
> **Core Principle:** THINK, don't memorize. ASK, don't assume.
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
## Selective Reading Rule (MANDATORY)
|
|
15
|
+
|
|
16
|
+
**Read REQUIRED files always, OPTIONAL only when needed:**
|
|
17
|
+
|
|
18
|
+
| File | Status | When to Read |
|
|
19
|
+
|------|--------|--------------|
|
|
20
|
+
| [ux-psychology.md](ux-psychology.md) | **REQUIRED** | Always read first! |
|
|
21
|
+
| [color-system.md](color-system.md) | Optional | Color/palette decisions |
|
|
22
|
+
| [typography-system.md](typography-system.md) | Optional | Font selection/pairing |
|
|
23
|
+
| [visual-effects.md](visual-effects.md) | Optional | Glassmorphism, shadows, gradients |
|
|
24
|
+
| [animation-guide.md](animation-guide.md) | Optional | Animation needed |
|
|
25
|
+
| [motion-graphics.md](motion-graphics.md) | Optional | Lottie, GSAP, 3D |
|
|
26
|
+
| [decision-trees.md](decision-trees.md) | Optional | Context templates |
|
|
27
|
+
|
|
28
|
+
> **ux-psychology.md = ALWAYS READ. Others = only if relevant.**
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
## Question Tool Usage (MANDATORY)
|
|
33
|
+
|
|
34
|
+
When this skill requires user input or choices:
|
|
35
|
+
- Use `question` tool for all multi-option scenarios
|
|
36
|
+
- Present design options with clear descriptions
|
|
37
|
+
- Structure preference questions properly
|
|
38
|
+
|
|
39
|
+
**Example usage:**
|
|
40
|
+
```javascript
|
|
41
|
+
question({
|
|
42
|
+
questions: [{
|
|
43
|
+
question: "Which design style?",
|
|
44
|
+
header: "Style",
|
|
45
|
+
options: [
|
|
46
|
+
{ label: "Minimal", description: "Clean, simple" },
|
|
47
|
+
{ label: "Glassmorphism", description: "Modern, depth" },
|
|
48
|
+
{ label: "Neon", description: "Bold, vibrant" }
|
|
49
|
+
]
|
|
50
|
+
}]
|
|
51
|
+
})
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
See `.opencode/rules/MASTER.md` for complete Question Tool Protocol.
|
|
55
|
+
|
|
56
|
+
---
|
|
57
|
+
|
|
58
|
+
## Runtime Scripts
|
|
59
|
+
|
|
60
|
+
**Execute these for audits (don't read, just run):**
|
|
61
|
+
|
|
62
|
+
| Script | Purpose | Usage |
|
|
63
|
+
|--------|---------|-------|
|
|
64
|
+
| `scripts/ux_audit.py` | UX Psychology & Accessibility Audit | `python scripts/ux_audit.py <project_path>` |
|
|
65
|
+
| `scripts/design_system.py` | Design System Engine (Colors/Typo) | `python scripts/design_system.py --help` |
|
|
66
|
+
| `scripts/search.py` | Semantic Design Search | `python scripts/search.py "query"` |
|
|
67
|
+
|
|
68
|
+
---
|
|
69
|
+
|
|
70
|
+
## CRITICAL: ASK BEFORE ASSUMING (MANDATORY)
|
|
71
|
+
|
|
72
|
+
> **STOP! If the user's request is open-ended, DO NOT default to your favorites.**
|
|
73
|
+
|
|
74
|
+
### When User Prompt is Vague, ASK:
|
|
75
|
+
|
|
76
|
+
**Color not specified?** Ask:
|
|
77
|
+
> "What color palette do you prefer? (blue/green/orange/neutral/other?)"
|
|
78
|
+
|
|
79
|
+
**Style not specified?** Ask:
|
|
80
|
+
> "What style are you going for? (minimal/bold/retro/futuristic/organic?)"
|
|
81
|
+
|
|
82
|
+
**Layout not specified?** Ask:
|
|
83
|
+
> "Do you have a layout preference? (single column/grid/asymmetric/full-width?)"
|
|
84
|
+
|
|
85
|
+
### DEFAULT TENDENCIES TO BE AWARE OF:
|
|
86
|
+
|
|
87
|
+
| AI Default Tendency | Why It's a Concern | Better Approach |
|
|
88
|
+
|---------------------|--------------|---------------|
|
|
89
|
+
| **Bento Grids Everywhere** | Used in every AI design | Why does this content NEED a grid? Use when appropriate |
|
|
90
|
+
| **Always Hero Split** | Default to familiar pattern | Consider alternatives when they serve the content better |
|
|
91
|
+
| **Mesh/Aurora Gradients** | The "new" lazy background | Use intentionally, not as default |
|
|
92
|
+
| **Glassmorphism** | AI's idea of "premium" | Use when it enhances the design, not by default |
|
|
93
|
+
| **Generic Colors** | Default blue/cyan/purple | Choose colors based on brand and emotion |
|
|
94
|
+
| **Generic Copy** | AI-generated buzzwords | Write authentic copy that reflects the brand voice |
|
|
95
|
+
| Dark background + neon glow | Overused "AI look" | Use when it matches the brand personality |
|
|
96
|
+
| **Rounded everything** | Generic/Safe | Choose edge treatment based on brand personality |
|
|
97
|
+
|
|
98
|
+
> **Default patterns aren't inherently bad - they become problems when used without thinking. Consider context and make intentional choices.**
|
|
99
|
+
|
|
100
|
+
---
|
|
101
|
+
|
|
102
|
+
## 1. Constraint Analysis (ALWAYS FIRST)
|
|
103
|
+
|
|
104
|
+
Before any design work, ANSWER THESE or ASK USER:
|
|
105
|
+
|
|
106
|
+
| Constraint | Question | Why It Matters |
|
|
107
|
+
|------------|----------|----------------|
|
|
108
|
+
| **Timeline** | How much time? | Determines complexity |
|
|
109
|
+
| **Content** | Ready or placeholder? | Affects layout flexibility |
|
|
110
|
+
| **Brand** | Existing guidelines? | May dictate colors/fonts |
|
|
111
|
+
| **Tech** | What stack? | Affects capabilities |
|
|
112
|
+
| **Audience** | Who exactly? | Drives all visual decisions |
|
|
113
|
+
|
|
114
|
+
### Audience → Design Approach
|
|
115
|
+
|
|
116
|
+
| Audience | Think About |
|
|
117
|
+
|----------|-------------|
|
|
118
|
+
| **Gen Z** | Bold, fast, mobile-first, authentic |
|
|
119
|
+
| **Millennials** | Clean, minimal, value-driven |
|
|
120
|
+
| **Gen X** | Familiar, trustworthy, clear |
|
|
121
|
+
| **Boomers** | Readable, high contrast, simple |
|
|
122
|
+
| **B2B** | Professional, data-focused, trust |
|
|
123
|
+
| **Luxury** | Restrained elegance, whitespace |
|
|
124
|
+
|
|
125
|
+
---
|
|
126
|
+
|
|
127
|
+
## 2. UX Psychology Principles
|
|
128
|
+
|
|
129
|
+
### Core Laws (Internalize These)
|
|
130
|
+
|
|
131
|
+
| Law | Principle | Application |
|
|
132
|
+
|-----|-----------|-------------|
|
|
133
|
+
| **Hick's Law** | More choices = slower decisions | Limit options, use progressive disclosure |
|
|
134
|
+
| **Fitts' Law** | Bigger + closer = easier to click | Size CTAs appropriately |
|
|
135
|
+
| **Miller's Law** | ~7 items in working memory | Chunk content into groups |
|
|
136
|
+
| **Von Restorff** | Different = memorable | Make CTAs visually distinct |
|
|
137
|
+
| **Serial Position** | First/last remembered most | Key info at start/end |
|
|
138
|
+
|
|
139
|
+
### Emotional Design Levels
|
|
140
|
+
|
|
141
|
+
```
|
|
142
|
+
VISCERAL (instant) → First impression: colors, imagery, overall feel
|
|
143
|
+
BEHAVIORAL (use) → Using it: speed, feedback, efficiency
|
|
144
|
+
REFLECTIVE (memory) → After: "I like what this says about me"
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
### Trust Building
|
|
148
|
+
|
|
149
|
+
- Security indicators on sensitive actions
|
|
150
|
+
- Social proof where relevant
|
|
151
|
+
- Clear contact/support access
|
|
152
|
+
- Consistent, professional design
|
|
153
|
+
- Transparent policies
|
|
154
|
+
|
|
155
|
+
---
|
|
156
|
+
|
|
157
|
+
## 3. Layout Principles
|
|
158
|
+
|
|
159
|
+
### Golden Ratio (φ = 1.618)
|
|
160
|
+
|
|
161
|
+
```
|
|
162
|
+
Use for proportional harmony:
|
|
163
|
+
├── Content : Sidebar = roughly 62% : 38%
|
|
164
|
+
├── Each heading size = previous × 1.618 (for dramatic scale)
|
|
165
|
+
├── Spacing can follow: sm → md → lg (each × 1.618)
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
### 8-Point Grid Concept
|
|
169
|
+
|
|
170
|
+
```
|
|
171
|
+
All spacing and sizing in multiples of 8:
|
|
172
|
+
├── Tight: 4px (half-step for micro)
|
|
173
|
+
├── Small: 8px
|
|
174
|
+
├── Medium: 16px
|
|
175
|
+
├── Large: 24px, 32px
|
|
176
|
+
├── XL: 48px, 64px, 80px
|
|
177
|
+
└── Adjust based on content density
|
|
178
|
+
```
|
|
179
|
+
|
|
180
|
+
### Key Sizing Principles
|
|
181
|
+
|
|
182
|
+
| Element | Consideration |
|
|
183
|
+
|---------|---------------|
|
|
184
|
+
| **Touch targets** | Minimum comfortable tap size |
|
|
185
|
+
| **Buttons** | Height based on importance hierarchy |
|
|
186
|
+
| **Inputs** | Match button height for alignment |
|
|
187
|
+
| **Cards** | Consistent padding, breathable |
|
|
188
|
+
| **Reading width** | 45-75 characters optimal |
|
|
189
|
+
|
|
190
|
+
---
|
|
191
|
+
|
|
192
|
+
## 4. Color Principles
|
|
193
|
+
|
|
194
|
+
### 60-30-10 Rule
|
|
195
|
+
|
|
196
|
+
```
|
|
197
|
+
60% → Primary/Background (calm, neutral base)
|
|
198
|
+
30% → Secondary (supporting areas)
|
|
199
|
+
10% → Accent (CTAs, highlights, attention)
|
|
200
|
+
```
|
|
201
|
+
|
|
202
|
+
### Color Psychology (For Decision Making)
|
|
203
|
+
|
|
204
|
+
| If You Need... | Consider Hues | Avoid |
|
|
205
|
+
|----------------|---------------|-------|
|
|
206
|
+
| Trust, calm | Blue family | Aggressive reds |
|
|
207
|
+
| Growth, nature | Green family | Industrial grays |
|
|
208
|
+
| Energy, urgency | Orange, red | Passive blues |
|
|
209
|
+
| Luxury, creativity | Deep Teal, Gold, Emerald | Cheap-feeling brights |
|
|
210
|
+
| Clean, minimal | Neutrals | Overwhelming color |
|
|
211
|
+
|
|
212
|
+
### Selection Process
|
|
213
|
+
|
|
214
|
+
1. **What's the industry?** (narrows options)
|
|
215
|
+
2. **What's the emotion?** (picks primary)
|
|
216
|
+
3. **Light or dark mode?** (sets foundation)
|
|
217
|
+
4. **ASK USER** if not specified
|
|
218
|
+
|
|
219
|
+
For detailed color theory: [color-system.md](color-system.md)
|
|
220
|
+
|
|
221
|
+
---
|
|
222
|
+
|
|
223
|
+
## 5. Typography Principles
|
|
224
|
+
|
|
225
|
+
### Scale Selection
|
|
226
|
+
|
|
227
|
+
| Content Type | Scale Ratio | Feel |
|
|
228
|
+
|--------------|-------------|------|
|
|
229
|
+
| Dense UI | 1.125-1.2 | Compact, efficient |
|
|
230
|
+
| General web | 1.25 | Balanced (most common) |
|
|
231
|
+
| Editorial | 1.333 | Readable, spacious |
|
|
232
|
+
| Hero/display | 1.5-1.618 | Dramatic impact |
|
|
233
|
+
|
|
234
|
+
### Pairing Concept
|
|
235
|
+
|
|
236
|
+
```
|
|
237
|
+
Contrast + Harmony:
|
|
238
|
+
├── DIFFERENT enough for hierarchy
|
|
239
|
+
├── SIMILAR enough for cohesion
|
|
240
|
+
└── Usually: display + neutral, or serif + sans
|
|
241
|
+
```
|
|
242
|
+
|
|
243
|
+
### Readability Rules
|
|
244
|
+
|
|
245
|
+
- **Line length**: 45-75 characters optimal
|
|
246
|
+
- **Line height**: 1.4-1.6 for body text
|
|
247
|
+
- **Contrast**: Check WCAG requirements
|
|
248
|
+
- **Size**: 16px+ for body on web
|
|
249
|
+
|
|
250
|
+
For detailed typography: [typography-system.md](typography-system.md)
|
|
251
|
+
|
|
252
|
+
---
|
|
253
|
+
|
|
254
|
+
## 6. Visual Effects Principles
|
|
255
|
+
|
|
256
|
+
### Glassmorphism (When Appropriate)
|
|
257
|
+
|
|
258
|
+
```
|
|
259
|
+
Key properties:
|
|
260
|
+
├── Semi-transparent background
|
|
261
|
+
├── Backdrop blur
|
|
262
|
+
├── Subtle border for definition
|
|
263
|
+
└── **WARNING:** Standard blue/white glassmorphism is a modern cliché. Use it radically or not at all.
|
|
264
|
+
```
|
|
265
|
+
|
|
266
|
+
### Shadow Hierarchy
|
|
267
|
+
|
|
268
|
+
```
|
|
269
|
+
Elevation concept:
|
|
270
|
+
├── Higher elements = larger shadows
|
|
271
|
+
├── Y-offset > X-offset (light from above)
|
|
272
|
+
├── Multiple layers = more realistic
|
|
273
|
+
└── Dark mode: may need glow instead
|
|
274
|
+
```
|
|
275
|
+
|
|
276
|
+
### Gradient Usage
|
|
277
|
+
|
|
278
|
+
```
|
|
279
|
+
Harmonious gradients:
|
|
280
|
+
├── Adjacent colors on wheel (analogous)
|
|
281
|
+
├── OR same hue, different lightness
|
|
282
|
+
├── Avoid harsh complementary pairs
|
|
283
|
+
├── **NO Mesh/Aurora Gradients** (floating blobs)
|
|
284
|
+
└── VARY from project to project radically
|
|
285
|
+
```
|
|
286
|
+
|
|
287
|
+
For complete effects guide: [visual-effects.md](visual-effects.md)
|
|
288
|
+
|
|
289
|
+
---
|
|
290
|
+
|
|
291
|
+
## 7. Animation Principles
|
|
292
|
+
|
|
293
|
+
### Timing Concept
|
|
294
|
+
|
|
295
|
+
```
|
|
296
|
+
Duration based on:
|
|
297
|
+
├── Distance (further = longer)
|
|
298
|
+
├── Size (larger = slower)
|
|
299
|
+
├── Importance (critical = clear)
|
|
300
|
+
└── Context (urgent = fast, luxury = slow)
|
|
301
|
+
```
|
|
302
|
+
|
|
303
|
+
### Easing Selection
|
|
304
|
+
|
|
305
|
+
| Action | Easing | Why |
|
|
306
|
+
|--------|--------|-----|
|
|
307
|
+
| Entering | Ease-out | Decelerate, settle in |
|
|
308
|
+
| Leaving | Ease-in | Accelerate, exit |
|
|
309
|
+
| Emphasis | Ease-in-out | Smooth, deliberate |
|
|
310
|
+
| Playful | Bounce | Fun, energetic |
|
|
311
|
+
|
|
312
|
+
### Performance
|
|
313
|
+
|
|
314
|
+
- Animate only transform and opacity
|
|
315
|
+
- Respect reduced-motion preference
|
|
316
|
+
- Test on low-end devices
|
|
317
|
+
|
|
318
|
+
For animation patterns: [animation-guide.md](animation-guide.md), for advanced: [motion-graphics.md](motion-graphics.md)
|
|
319
|
+
|
|
320
|
+
---
|
|
321
|
+
|
|
322
|
+
## 8. "Wow Factor" Checklist
|
|
323
|
+
|
|
324
|
+
### Premium Indicators
|
|
325
|
+
|
|
326
|
+
- [ ] Generous whitespace (luxury = breathing room)
|
|
327
|
+
- [ ] Subtle depth and dimension
|
|
328
|
+
- [ ] Smooth, purposeful animations
|
|
329
|
+
- [ ] Attention to detail (alignment, consistency)
|
|
330
|
+
- [ ] Cohesive visual rhythm
|
|
331
|
+
- [ ] Custom elements (not all defaults)
|
|
332
|
+
|
|
333
|
+
### Trust Builders
|
|
334
|
+
|
|
335
|
+
- [ ] Security cues where appropriate
|
|
336
|
+
- [ ] Social proof / testimonials
|
|
337
|
+
- [ ] Clear value proposition
|
|
338
|
+
- [ ] Professional imagery
|
|
339
|
+
- [ ] Consistent design language
|
|
340
|
+
|
|
341
|
+
### Emotional Triggers
|
|
342
|
+
|
|
343
|
+
- [ ] Hero that evokes intended emotion
|
|
344
|
+
- [ ] Human elements (faces, stories)
|
|
345
|
+
- [ ] Progress/achievement indicators
|
|
346
|
+
- [ ] Moments of delight
|
|
347
|
+
|
|
348
|
+
---
|
|
349
|
+
|
|
350
|
+
## 9. Anti-Patterns (What NOT to Do)
|
|
351
|
+
|
|
352
|
+
### Lazy Design Indicators
|
|
353
|
+
|
|
354
|
+
- Default system fonts without consideration
|
|
355
|
+
- Stock imagery that doesn't match
|
|
356
|
+
- Inconsistent spacing
|
|
357
|
+
- Too many competing colors
|
|
358
|
+
- Walls of text without hierarchy
|
|
359
|
+
- Inaccessible contrast
|
|
360
|
+
|
|
361
|
+
### AI Tendency Patterns (BE AWARE!)
|
|
362
|
+
|
|
363
|
+
- **Same colors every project** → Choose based on brand and context
|
|
364
|
+
- **Dark + neon as default** → Use when it fits the brand personality
|
|
365
|
+
- **Generic color choices** → Consider what works for the specific brand/industry
|
|
366
|
+
- **Bento grids for simple landing pages** → Use when they serve the content, not by default
|
|
367
|
+
- **Mesh Gradients & Glow Effects** → Apply intentionally, not as background default
|
|
368
|
+
- **Same layout structure / Vercel clone** → Consider alternatives, but use patterns that work
|
|
369
|
+
- **Not asking user preferences** → Always involve the user in design decisions
|
|
370
|
+
|
|
371
|
+
### Dark Patterns (Unethical)
|
|
372
|
+
|
|
373
|
+
- Hidden costs
|
|
374
|
+
- Fake urgency
|
|
375
|
+
- Forced actions
|
|
376
|
+
- Deceptive UI
|
|
377
|
+
- Confirmshaming
|
|
378
|
+
|
|
379
|
+
---
|
|
380
|
+
|
|
381
|
+
## 10. Decision Process Summary
|
|
382
|
+
|
|
383
|
+
```
|
|
384
|
+
For EVERY design task:
|
|
385
|
+
|
|
386
|
+
1. CONSTRAINTS
|
|
387
|
+
└── What's the timeline, brand, tech, audience?
|
|
388
|
+
└── If unclear → ASK
|
|
389
|
+
|
|
390
|
+
2. CONTENT
|
|
391
|
+
└── What content exists?
|
|
392
|
+
└── What's the hierarchy?
|
|
393
|
+
|
|
394
|
+
3. STYLE DIRECTION
|
|
395
|
+
└── What's appropriate for context?
|
|
396
|
+
└── If unclear → ASK (don't default!)
|
|
397
|
+
|
|
398
|
+
4. EXECUTION
|
|
399
|
+
└── Apply principles above
|
|
400
|
+
└── Check against anti-patterns
|
|
401
|
+
|
|
402
|
+
5. REVIEW
|
|
403
|
+
└── "Does this serve the user?"
|
|
404
|
+
└── "Is this different from my defaults?"
|
|
405
|
+
└── "Would I be proud of this?"
|
|
406
|
+
```
|
|
407
|
+
|
|
408
|
+
---
|
|
409
|
+
|
|
410
|
+
## Reference Files
|
|
411
|
+
|
|
412
|
+
For deeper guidance on specific areas:
|
|
413
|
+
|
|
414
|
+
- [color-system.md](color-system.md) - Color theory and selection process
|
|
415
|
+
- [typography-system.md](typography-system.md) - Font pairing and scale decisions
|
|
416
|
+
- [visual-effects.md](visual-effects.md) - Effects principles and techniques
|
|
417
|
+
- [animation-guide.md](animation-guide.md) - Motion design principles
|
|
418
|
+
- [motion-graphics.md](motion-graphics.md) - Advanced: Lottie, GSAP, SVG, 3D, Particles
|
|
419
|
+
- [decision-trees.md](decision-trees.md) - Context-specific templates
|
|
420
|
+
- [ux-psychology.md](ux-psychology.md) - User psychology deep dive
|
|
421
|
+
|
|
422
|
+
---
|
|
423
|
+
|
|
424
|
+
## Related Skills
|
|
425
|
+
|
|
426
|
+
| Skill | When to Use |
|
|
427
|
+
|-------|-------------|
|
|
428
|
+
| **frontend-design** (this) | Before coding - Learn design principles (color, typography, UX psychology) |
|
|
429
|
+
| **[web-design-guidelines](../web-design-guidelines/SKILL.md)** | After coding - Audit for accessibility, performance, and best practices |
|
|
430
|
+
|
|
431
|
+
## Post-Design Workflow
|
|
432
|
+
|
|
433
|
+
After implementing your design, run the audit:
|
|
434
|
+
|
|
435
|
+
```
|
|
436
|
+
1. DESIGN → Read frontend-design principles ← YOU ARE HERE
|
|
437
|
+
2. CODE → Implement the design
|
|
438
|
+
3. AUDIT → Run web-design-guidelines review
|
|
439
|
+
4. FIX → Address findings from audit
|
|
440
|
+
```
|
|
441
|
+
|
|
442
|
+
> **Next Step:** After coding, use `web-design-guidelines` skill to audit your implementation for accessibility, focus states, animations, and performance issues.
|
|
443
|
+
|
|
444
|
+
---
|
|
445
|
+
|
|
446
|
+
> **Remember:** Design is THINKING, not copying. Every project deserves fresh consideration based on its unique context and users. **Make intentional choices based on goals, not arbitrary restrictions.**
|