agy-superpowers 5.1.2 → 5.1.4
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/LICENSE +1 -1
- package/README.md +198 -175
- package/package.json +1 -1
- package/template/agent/.shared/mobile-uiux-promax/data/accessibility.csv +25 -0
- package/template/agent/.shared/mobile-uiux-promax/data/animation.csv +22 -0
- package/template/agent/.shared/mobile-uiux-promax/data/components.csv +21 -0
- package/template/agent/.shared/mobile-uiux-promax/data/gestures.csv +26 -0
- package/template/agent/.shared/mobile-uiux-promax/data/layout.csv +21 -0
- package/template/agent/.shared/mobile-uiux-promax/data/navigation.csv +27 -0
- package/template/agent/.shared/mobile-uiux-promax/data/onboarding.csv +17 -0
- package/template/agent/.shared/mobile-uiux-promax/data/platform.csv +22 -0
- package/template/agent/.shared/mobile-uiux-promax/data/stacks/flutter.csv +19 -0
- package/template/agent/.shared/mobile-uiux-promax/data/stacks/jetpack-compose.csv +18 -0
- package/template/agent/.shared/mobile-uiux-promax/data/stacks/react-native.csv +20 -0
- package/template/agent/.shared/mobile-uiux-promax/data/stacks/swiftui.csv +18 -0
- package/template/agent/.shared/mobile-uiux-promax/data/ux-laws.csv +16 -0
- package/template/agent/.shared/mobile-uiux-promax/scripts/mobile-search.py +157 -0
- package/template/agent/.shared/ui-ux-pro-max/data/charts.csv +26 -0
- package/template/agent/.shared/ui-ux-pro-max/data/colors.csv +97 -0
- package/template/agent/.shared/ui-ux-pro-max/data/landing.csv +31 -0
- package/template/agent/.shared/ui-ux-pro-max/data/products.csv +97 -0
- package/template/agent/.shared/ui-ux-pro-max/data/prompts.csv +24 -0
- package/template/agent/.shared/ui-ux-pro-max/data/stacks/flutter.csv +53 -0
- package/template/agent/.shared/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -0
- package/template/agent/.shared/ui-ux-pro-max/data/stacks/nextjs.csv +53 -0
- package/template/agent/.shared/ui-ux-pro-max/data/stacks/react-native.csv +52 -0
- package/template/agent/.shared/ui-ux-pro-max/data/stacks/react.csv +54 -0
- package/template/agent/.shared/ui-ux-pro-max/data/stacks/svelte.csv +54 -0
- package/template/agent/.shared/ui-ux-pro-max/data/stacks/swiftui.csv +51 -0
- package/template/agent/.shared/ui-ux-pro-max/data/stacks/vue.csv +50 -0
- package/template/agent/.shared/ui-ux-pro-max/data/styles.csv +59 -0
- package/template/agent/.shared/ui-ux-pro-max/data/typography.csv +58 -0
- package/template/agent/.shared/ui-ux-pro-max/data/ux-guidelines.csv +100 -0
- package/template/agent/.shared/ui-ux-pro-max/scripts/__pycache__/core.cpython-313.pyc +0 -0
- package/template/agent/.shared/ui-ux-pro-max/scripts/core.py +236 -0
- package/template/agent/.shared/ui-ux-pro-max/scripts/search.py +61 -0
- package/template/agent/.tests/TESTS.md +119 -0
- package/template/agent/.tests/mobile-uiux-promax/test_search.py +266 -0
- package/template/agent/.tests/run_tests.py +86 -0
- package/template/agent/patches/skills-patches.md +24 -0
- package/template/agent/rules/git-policy.md +25 -0
- package/template/agent/skills/brainstorming/SKILL.md +57 -0
- package/template/agent/skills/finishing-a-development-branch/SKILL.md +18 -6
- package/template/agent/skills/frontend-design/SKILL.md +147 -0
- package/template/agent/skills/frontend-design/reference/color-and-contrast.md +117 -0
- package/template/agent/skills/frontend-design/reference/interaction-design.md +159 -0
- package/template/agent/skills/frontend-design/reference/motion-design.md +150 -0
- package/template/agent/skills/frontend-design/reference/responsive-design.md +161 -0
- package/template/agent/skills/frontend-design/reference/spatial-design.md +122 -0
- package/template/agent/skills/frontend-design/reference/typography.md +124 -0
- package/template/agent/skills/frontend-design/reference/ux-writing.md +127 -0
- package/template/agent/skills/mobile-uiux-promax/SKILL.md +139 -0
- package/template/agent/skills/using-git-worktrees/SKILL.md +3 -1
- package/template/agent/skills/verification-before-completion/SKILL.md +11 -0
- package/template/agent/workflows/mobile-uiux-promax.md +137 -0
- package/template/agent/workflows/ui-ux-pro-max.md +231 -0
|
@@ -99,6 +99,17 @@ Skip any step = lying, not verifying
|
|
|
99
99
|
❌ "Tests pass, phase complete"
|
|
100
100
|
```
|
|
101
101
|
|
|
102
|
+
**`.agent/.tests/` check (if applicable):**
|
|
103
|
+
|
|
104
|
+
If work involved modifying any `.agent/skills/<skill>/` or `.agent/.shared/<tool>/`, run tests before claiming done:
|
|
105
|
+
```bash
|
|
106
|
+
python3 .agent/.tests/run_tests.py <skill-name>
|
|
107
|
+
```
|
|
108
|
+
```
|
|
109
|
+
✅ Run command → Paste full verbose output → All pass → Claim done
|
|
110
|
+
❌ "Should still pass" / Skip running because "I didn't change the data"
|
|
111
|
+
```
|
|
112
|
+
|
|
102
113
|
**Agent delegation:**
|
|
103
114
|
```
|
|
104
115
|
✅ Agent reports success → Check VCS diff → Verify changes → Report actual state
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Plan and implement mobile app UI (iOS, Android, React Native, Flutter, SwiftUI, Compose)
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Mobile UI/UX Pro Max
|
|
6
|
+
|
|
7
|
+
Data-driven mobile design intelligence. Runs a 4-step search sequence — style layer (web tool) → mobile behavior layer → stack guidelines → synthesize — before presenting any mobile UI design.
|
|
8
|
+
|
|
9
|
+
## Prerequisites
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
python3 --version # 3.8+ required
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## When to Use
|
|
16
|
+
|
|
17
|
+
When asked to design, build, or review mobile app UI. Activate for any request involving:
|
|
18
|
+
- Mobile app screen design
|
|
19
|
+
- iOS or Android UI
|
|
20
|
+
- React Native, Flutter, SwiftUI, or Jetpack Compose UI
|
|
21
|
+
- Navigation, gestures, onboarding, or mobile-specific UX patterns
|
|
22
|
+
|
|
23
|
+
## 4-Step Search Sequence
|
|
24
|
+
|
|
25
|
+
### Step 1 — Style Layer (web tool, same as web flow)
|
|
26
|
+
|
|
27
|
+
Search for style, color, typography, and product inspiration:
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
python3 .agent/.shared/ui-ux-pro-max/scripts/search.py "<app type>" --domain product
|
|
31
|
+
python3 .agent/.shared/ui-ux-pro-max/scripts/search.py "<style keywords>" --domain style
|
|
32
|
+
python3 .agent/.shared/ui-ux-pro-max/scripts/search.py "<industry mood>" --domain color
|
|
33
|
+
python3 .agent/.shared/ui-ux-pro-max/scripts/search.py "<mood>" --domain typography
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
### Step 2 — Mobile Behavior Layer (mobile tool)
|
|
37
|
+
|
|
38
|
+
Search for mobile-specific UX patterns and platform conventions:
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
# Step 2: Mobile behavior (navigation, gestures, components, layout, platform, animation, onboarding, accessibility, ux-laws)
|
|
42
|
+
python3 .agent/.shared/mobile-uiux-promax/scripts/mobile-search.py "<nav pattern>" --domain navigation
|
|
43
|
+
python3 .agent/.shared/mobile-uiux-promax/scripts/mobile-search.py "<gesture>" --domain gestures
|
|
44
|
+
python3 .agent/.shared/mobile-uiux-promax/scripts/mobile-search.py "<component>" --domain components
|
|
45
|
+
python3 .agent/.shared/mobile-uiux-promax/scripts/mobile-search.py "<layout topic>" --domain layout
|
|
46
|
+
python3 .agent/.shared/mobile-uiux-promax/scripts/mobile-search.py "<platform difference>" --domain platform
|
|
47
|
+
python3 .agent/.shared/mobile-uiux-promax/scripts/mobile-search.py "<animation type>" --domain animation
|
|
48
|
+
python3 .agent/.shared/mobile-uiux-promax/scripts/mobile-search.py "<onboarding pattern>" --domain onboarding
|
|
49
|
+
python3 .agent/.shared/mobile-uiux-promax/scripts/mobile-search.py "<a11y concern>" --domain accessibility
|
|
50
|
+
python3 .agent/.shared/mobile-uiux-promax/scripts/mobile-search.py "<psychology principle>" --domain ux-laws
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
### Step 3 — Stack Guidelines
|
|
54
|
+
|
|
55
|
+
Search for your specific stack's implementation patterns:
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
# React Native
|
|
59
|
+
python3 .agent/.shared/mobile-uiux-promax/scripts/mobile-search.py "<topic>" --stack react-native
|
|
60
|
+
|
|
61
|
+
# Flutter
|
|
62
|
+
python3 .agent/.shared/mobile-uiux-promax/scripts/mobile-search.py "<topic>" --stack flutter
|
|
63
|
+
|
|
64
|
+
# SwiftUI
|
|
65
|
+
python3 .agent/.shared/mobile-uiux-promax/scripts/mobile-search.py "<topic>" --stack swiftui
|
|
66
|
+
|
|
67
|
+
# Jetpack Compose
|
|
68
|
+
python3 .agent/.shared/mobile-uiux-promax/scripts/mobile-search.py "<topic>" --stack jetpack-compose
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
Use `-n 5` to get more results: `--domain navigation -n 5`
|
|
72
|
+
|
|
73
|
+
### Step 4 — Synthesize and Design
|
|
74
|
+
|
|
75
|
+
Combine all search results to inform:
|
|
76
|
+
- Visual style (from Step 1)
|
|
77
|
+
- Navigation structure and gestures (from Step 2)
|
|
78
|
+
- Platform conventions and component choices (from Step 2)
|
|
79
|
+
- Stack-specific implementation patterns (from Step 3)
|
|
80
|
+
|
|
81
|
+
Present as **screen flows** not isolated component lists.
|
|
82
|
+
|
|
83
|
+
## Pre-Delivery Checklist
|
|
84
|
+
|
|
85
|
+
Before presenting any mobile UI design or implementation:
|
|
86
|
+
|
|
87
|
+
- [ ] All touch targets ≥ 44pt (iOS) / 48dp (Android)
|
|
88
|
+
- [ ] Safe areas respected (notch, Dynamic Island, home indicator)
|
|
89
|
+
- [ ] Haptic feedback for key interactions (selection toggle success error)
|
|
90
|
+
- [ ] `prefers-reduced-motion` / Reduce Motion respected on both platforms
|
|
91
|
+
- [ ] Platform back navigation supported (iOS swipe-back + Android system back)
|
|
92
|
+
- [ ] Accessibility labels on all interactive elements
|
|
93
|
+
- [ ] Dark mode tested on both platforms
|
|
94
|
+
- [ ] No hardcoded pixel values (use responsive units: pt/sp not px)
|
|
95
|
+
|
|
96
|
+
## Domain Reference
|
|
97
|
+
|
|
98
|
+
| Domain | When to search |
|
|
99
|
+
|--------|---------------|
|
|
100
|
+
| `navigation` | Nav structure, tab bar vs drawer, modals, deep links |
|
|
101
|
+
| `gestures` | Swipe pull-to-refresh long press pinch |
|
|
102
|
+
| `components` | Bottom sheet FAB snackbar chips skeleton |
|
|
103
|
+
| `layout` | Safe areas thumb zone spacing keyboard |
|
|
104
|
+
| `platform` | iOS vs Android conventions HIG vs MD3 |
|
|
105
|
+
| `animation` | Transitions micro-interactions haptic timing |
|
|
106
|
+
| `onboarding` | First-time flow permissions paywall signup timing |
|
|
107
|
+
| `accessibility` | Touch targets screen reader labels contrast |
|
|
108
|
+
| `ux-laws` | Psychology principles: Fitts Hick Miller Jakob Goal-Gradient Peak-End Doherty etc. |
|
|
109
|
+
|
|
110
|
+
## Stack Reference
|
|
111
|
+
|
|
112
|
+
| Stack | When to use |
|
|
113
|
+
|-------|------------|
|
|
114
|
+
| `react-native` | React Native (iOS + Android) |
|
|
115
|
+
| `flutter` | Flutter (iOS + Android) |
|
|
116
|
+
| `swiftui` | SwiftUI (iOS native) |
|
|
117
|
+
| `jetpack-compose` | Jetpack Compose (Android native) |
|
|
118
|
+
|
|
119
|
+
## Example: Fitness Tracker App (Dark Mode, RN)
|
|
120
|
+
|
|
121
|
+
```bash
|
|
122
|
+
# Step 1: Style
|
|
123
|
+
python3 .agent/.shared/ui-ux-pro-max/scripts/search.py "fitness health tracker" --domain product
|
|
124
|
+
python3 .agent/.shared/ui-ux-pro-max/scripts/search.py "dark energetic bold sport" --domain style
|
|
125
|
+
python3 .agent/.shared/ui-ux-pro-max/scripts/search.py "fitness sport energy" --domain color
|
|
126
|
+
python3 .agent/.shared/ui-ux-pro-max/scripts/search.py "bold dynamic" --domain typography
|
|
127
|
+
|
|
128
|
+
# Step 2: Mobile behavior
|
|
129
|
+
python3 .agent/.shared/mobile-uiux-promax/scripts/mobile-search.py "tab bar navigation bottom" --domain navigation
|
|
130
|
+
python3 .agent/.shared/mobile-uiux-promax/scripts/mobile-search.py "swipe gesture workouts list" --domain gestures
|
|
131
|
+
python3 .agent/.shared/mobile-uiux-promax/scripts/mobile-search.py "progress card stat tracker component" --domain components
|
|
132
|
+
python3 .agent/.shared/mobile-uiux-promax/scripts/mobile-search.py "dark mode" --domain platform
|
|
133
|
+
python3 .agent/.shared/mobile-uiux-promax/scripts/mobile-search.py "spring animation progress" --domain animation
|
|
134
|
+
|
|
135
|
+
# Step 3: Stack
|
|
136
|
+
python3 .agent/.shared/mobile-uiux-promax/scripts/mobile-search.py "list performance animation" --stack react-native
|
|
137
|
+
```
|
|
@@ -0,0 +1,231 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Plan and implement UI
|
|
3
|
+
auto_execution_mode: 3
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# UI/UX Pro Max - Design Intelligence
|
|
7
|
+
|
|
8
|
+
Searchable database of UI styles, color palettes, font pairings, chart types, product recommendations, UX guidelines, and stack-specific best practices.
|
|
9
|
+
|
|
10
|
+
## Prerequisites
|
|
11
|
+
|
|
12
|
+
Check if Python is installed:
|
|
13
|
+
|
|
14
|
+
```bash
|
|
15
|
+
python3 --version || python --version
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
If Python is not installed, install it based on user's OS:
|
|
19
|
+
|
|
20
|
+
**macOS:**
|
|
21
|
+
```bash
|
|
22
|
+
brew install python3
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
**Ubuntu/Debian:**
|
|
26
|
+
```bash
|
|
27
|
+
sudo apt update && sudo apt install python3
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
**Windows:**
|
|
31
|
+
```powershell
|
|
32
|
+
winget install Python.Python.3.12
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
## How to Use This Workflow
|
|
38
|
+
|
|
39
|
+
When user requests UI/UX work (design, build, create, implement, review, fix, improve), follow this workflow:
|
|
40
|
+
|
|
41
|
+
### Step 1: Analyze User Requirements
|
|
42
|
+
|
|
43
|
+
Extract key information from user request:
|
|
44
|
+
- **Product type**: SaaS, e-commerce, portfolio, dashboard, landing page, etc.
|
|
45
|
+
- **Style keywords**: minimal, playful, professional, elegant, dark mode, etc.
|
|
46
|
+
- **Industry**: healthcare, fintech, gaming, education, etc.
|
|
47
|
+
- **Stack**: React, Vue, Next.js, or default to `html-tailwind`
|
|
48
|
+
|
|
49
|
+
### Step 2: Search Relevant Domains
|
|
50
|
+
|
|
51
|
+
Use `search.py` multiple times to gather comprehensive information. Search until you have enough context.
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
python3 .agent/.shared/ui-ux-pro-max/scripts/search.py "<keyword>" --domain <domain> [-n <max_results>]
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
**Recommended search order:**
|
|
58
|
+
|
|
59
|
+
1. **Product** - Get style recommendations for product type
|
|
60
|
+
2. **Style** - Get detailed style guide (colors, effects, frameworks)
|
|
61
|
+
3. **Typography** - Get font pairings with Google Fonts imports
|
|
62
|
+
4. **Color** - Get color palette (Primary, Secondary, CTA, Background, Text, Border)
|
|
63
|
+
5. **Landing** - Get page structure (if landing page)
|
|
64
|
+
6. **Chart** - Get chart recommendations (if dashboard/analytics)
|
|
65
|
+
7. **UX** - Get best practices and anti-patterns
|
|
66
|
+
8. **Stack** - Get stack-specific guidelines (default: html-tailwind)
|
|
67
|
+
|
|
68
|
+
### Step 3: Stack Guidelines (Default: html-tailwind)
|
|
69
|
+
|
|
70
|
+
If user doesn't specify a stack, **default to `html-tailwind`**.
|
|
71
|
+
|
|
72
|
+
```bash
|
|
73
|
+
python3 .agent/.shared/ui-ux-pro-max/scripts/search.py "<keyword>" --stack html-tailwind
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
Available stacks: `html-tailwind`, `react`, `nextjs`, `vue`, `svelte`, `swiftui`, `react-native`, `flutter`
|
|
77
|
+
|
|
78
|
+
---
|
|
79
|
+
|
|
80
|
+
## Search Reference
|
|
81
|
+
|
|
82
|
+
### Available Domains
|
|
83
|
+
|
|
84
|
+
| Domain | Use For | Example Keywords |
|
|
85
|
+
|--------|---------|------------------|
|
|
86
|
+
| `product` | Product type recommendations | SaaS, e-commerce, portfolio, healthcare, beauty, service |
|
|
87
|
+
| `style` | UI styles, colors, effects | glassmorphism, minimalism, dark mode, brutalism |
|
|
88
|
+
| `typography` | Font pairings, Google Fonts | elegant, playful, professional, modern |
|
|
89
|
+
| `color` | Color palettes by product type | saas, ecommerce, healthcare, beauty, fintech, service |
|
|
90
|
+
| `landing` | Page structure, CTA strategies | hero, hero-centric, testimonial, pricing, social-proof |
|
|
91
|
+
| `chart` | Chart types, library recommendations | trend, comparison, timeline, funnel, pie |
|
|
92
|
+
| `ux` | Best practices, anti-patterns | animation, accessibility, z-index, loading |
|
|
93
|
+
| `prompt` | AI prompts, CSS keywords | (style name) |
|
|
94
|
+
|
|
95
|
+
### Available Stacks
|
|
96
|
+
|
|
97
|
+
| Stack | Focus |
|
|
98
|
+
|-------|-------|
|
|
99
|
+
| `html-tailwind` | Tailwind utilities, responsive, a11y (DEFAULT) |
|
|
100
|
+
| `react` | State, hooks, performance, patterns |
|
|
101
|
+
| `nextjs` | SSR, routing, images, API routes |
|
|
102
|
+
| `vue` | Composition API, Pinia, Vue Router |
|
|
103
|
+
| `svelte` | Runes, stores, SvelteKit |
|
|
104
|
+
| `swiftui` | Views, State, Navigation, Animation |
|
|
105
|
+
| `react-native` | Components, Navigation, Lists |
|
|
106
|
+
| `flutter` | Widgets, State, Layout, Theming |
|
|
107
|
+
|
|
108
|
+
---
|
|
109
|
+
|
|
110
|
+
## Example Workflow
|
|
111
|
+
|
|
112
|
+
**User request:** "Làm landing page cho dịch vụ chăm sóc da chuyên nghiệp"
|
|
113
|
+
|
|
114
|
+
**AI should:**
|
|
115
|
+
|
|
116
|
+
```bash
|
|
117
|
+
# 1. Search product type
|
|
118
|
+
python3 .agent/.shared/ui-ux-pro-max/scripts/search.py "beauty spa wellness service" --domain product
|
|
119
|
+
|
|
120
|
+
# 2. Search style (based on industry: beauty, elegant)
|
|
121
|
+
python3 .agent/.shared/ui-ux-pro-max/scripts/search.py "elegant minimal soft" --domain style
|
|
122
|
+
|
|
123
|
+
# 3. Search typography
|
|
124
|
+
python3 .agent/.shared/ui-ux-pro-max/scripts/search.py "elegant luxury" --domain typography
|
|
125
|
+
|
|
126
|
+
# 4. Search color palette
|
|
127
|
+
python3 .agent/.shared/ui-ux-pro-max/scripts/search.py "beauty spa wellness" --domain color
|
|
128
|
+
|
|
129
|
+
# 5. Search landing page structure
|
|
130
|
+
python3 .agent/.shared/ui-ux-pro-max/scripts/search.py "hero-centric social-proof" --domain landing
|
|
131
|
+
|
|
132
|
+
# 6. Search UX guidelines
|
|
133
|
+
python3 .agent/.shared/ui-ux-pro-max/scripts/search.py "animation" --domain ux
|
|
134
|
+
python3 .agent/.shared/ui-ux-pro-max/scripts/search.py "accessibility" --domain ux
|
|
135
|
+
|
|
136
|
+
# 7. Search stack guidelines (default: html-tailwind)
|
|
137
|
+
python3 .agent/.shared/ui-ux-pro-max/scripts/search.py "layout responsive" --stack html-tailwind
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
**Then:** Synthesize all search results and implement the design.
|
|
141
|
+
|
|
142
|
+
---
|
|
143
|
+
|
|
144
|
+
## Tips for Better Results
|
|
145
|
+
|
|
146
|
+
1. **Be specific with keywords** - "healthcare SaaS dashboard" > "app"
|
|
147
|
+
2. **Search multiple times** - Different keywords reveal different insights
|
|
148
|
+
3. **Combine domains** - Style + Typography + Color = Complete design system
|
|
149
|
+
4. **Always check UX** - Search "animation", "z-index", "accessibility" for common issues
|
|
150
|
+
5. **Use stack flag** - Get implementation-specific best practices
|
|
151
|
+
6. **Iterate** - If first search doesn't match, try different keywords
|
|
152
|
+
7. **Split Into Multiple Files** - For better maintainability:
|
|
153
|
+
- Separate components into individual files (e.g., `Header.tsx`, `Footer.tsx`)
|
|
154
|
+
- Extract reusable styles into dedicated files
|
|
155
|
+
- Keep each file focused and under 200-300 lines
|
|
156
|
+
|
|
157
|
+
---
|
|
158
|
+
|
|
159
|
+
## Common Rules for Professional UI
|
|
160
|
+
|
|
161
|
+
These are frequently overlooked issues that make UI look unprofessional:
|
|
162
|
+
|
|
163
|
+
### Icons & Visual Elements
|
|
164
|
+
|
|
165
|
+
| Rule | Do | Don't |
|
|
166
|
+
|------|----|----- |
|
|
167
|
+
| **No emoji icons** | Use SVG icons (Heroicons, Lucide, Simple Icons) | Use emojis like 🎨 🚀 ⚙️ as UI icons |
|
|
168
|
+
| **Stable hover states** | Use color/opacity transitions on hover | Use scale transforms that shift layout |
|
|
169
|
+
| **Correct brand logos** | Research official SVG from Simple Icons | Guess or use incorrect logo paths |
|
|
170
|
+
| **Consistent icon sizing** | Use fixed viewBox (24x24) with w-6 h-6 | Mix different icon sizes randomly |
|
|
171
|
+
|
|
172
|
+
### Interaction & Cursor
|
|
173
|
+
|
|
174
|
+
| Rule | Do | Don't |
|
|
175
|
+
|------|----|----- |
|
|
176
|
+
| **Cursor pointer** | Add `cursor-pointer` to all clickable/hoverable cards | Leave default cursor on interactive elements |
|
|
177
|
+
| **Hover feedback** | Provide visual feedback (color, shadow, border) | No indication element is interactive |
|
|
178
|
+
| **Smooth transitions** | Use `transition-colors duration-200` | Instant state changes or too slow (>500ms) |
|
|
179
|
+
|
|
180
|
+
### Light/Dark Mode Contrast
|
|
181
|
+
|
|
182
|
+
| Rule | Do | Don't |
|
|
183
|
+
|------|----|----- |
|
|
184
|
+
| **Glass card light mode** | Use `bg-white/80` or higher opacity | Use `bg-white/10` (too transparent) |
|
|
185
|
+
| **Text contrast light** | Use `#0F172A` (slate-900) for text | Use `#94A3B8` (slate-400) for body text |
|
|
186
|
+
| **Muted text light** | Use `#475569` (slate-600) minimum | Use gray-400 or lighter |
|
|
187
|
+
| **Border visibility** | Use `border-gray-200` in light mode | Use `border-white/10` (invisible) |
|
|
188
|
+
|
|
189
|
+
### Layout & Spacing
|
|
190
|
+
|
|
191
|
+
| Rule | Do | Don't |
|
|
192
|
+
|------|----|----- |
|
|
193
|
+
| **Floating navbar** | Add `top-4 left-4 right-4` spacing | Stick navbar to `top-0 left-0 right-0` |
|
|
194
|
+
| **Content padding** | Account for fixed navbar height | Let content hide behind fixed elements |
|
|
195
|
+
| **Consistent max-width** | Use same `max-w-6xl` or `max-w-7xl` | Mix different container widths |
|
|
196
|
+
|
|
197
|
+
---
|
|
198
|
+
|
|
199
|
+
## Pre-Delivery Checklist
|
|
200
|
+
|
|
201
|
+
Before delivering UI code, verify these items:
|
|
202
|
+
|
|
203
|
+
### Visual Quality
|
|
204
|
+
- [ ] No emojis used as icons (use SVG instead)
|
|
205
|
+
- [ ] All icons from consistent icon set (Heroicons/Lucide)
|
|
206
|
+
- [ ] Brand logos are correct (verified from Simple Icons)
|
|
207
|
+
- [ ] Hover states don't cause layout shift
|
|
208
|
+
|
|
209
|
+
### Interaction
|
|
210
|
+
- [ ] All clickable elements have `cursor-pointer`
|
|
211
|
+
- [ ] Hover states provide clear visual feedback
|
|
212
|
+
- [ ] Transitions are smooth (150-300ms)
|
|
213
|
+
- [ ] Focus states visible for keyboard navigation
|
|
214
|
+
|
|
215
|
+
### Light/Dark Mode
|
|
216
|
+
- [ ] Light mode text has sufficient contrast (4.5:1 minimum)
|
|
217
|
+
- [ ] Glass/transparent elements visible in light mode
|
|
218
|
+
- [ ] Borders visible in both modes
|
|
219
|
+
- [ ] Test both modes before delivery
|
|
220
|
+
|
|
221
|
+
### Layout
|
|
222
|
+
- [ ] Floating elements have proper spacing from edges
|
|
223
|
+
- [ ] No content hidden behind fixed navbars
|
|
224
|
+
- [ ] Responsive at 320px, 768px, 1024px, 1440px
|
|
225
|
+
- [ ] No horizontal scroll on mobile
|
|
226
|
+
|
|
227
|
+
### Accessibility
|
|
228
|
+
- [ ] All images have alt text
|
|
229
|
+
- [ ] Form inputs have labels
|
|
230
|
+
- [ ] Color is not the only indicator
|
|
231
|
+
- [ ] `prefers-reduced-motion` respected
|