Skip to content

Commit cbb8def

Browse files
feat: Add comment functionality to the editor with a new comment panel and bubble menu for user interactions.
1 parent ba47d90 commit cbb8def

14 files changed

Lines changed: 1537 additions & 61 deletions

File tree

.agent/workflows/ui-ux-pro-max.md

Lines changed: 42 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -18,19 +18,16 @@ python3 --version || python --version
1818
If Python is not installed, install it based on user's OS:
1919

2020
**macOS:**
21-
2221
```bash
2322
brew install python3
2423
```
2524

2625
**Ubuntu/Debian:**
27-
2826
```bash
2927
sudo apt update && sudo apt install python3
3028
```
3129

3230
**Windows:**
33-
3431
```powershell
3532
winget install Python.Python.3.12
3633
```
@@ -44,7 +41,6 @@ When user requests UI/UX work (design, build, create, implement, review, fix, im
4441
### Step 1: Analyze User Requirements
4542

4643
Extract key information from user request:
47-
4844
- **Product type**: SaaS, e-commerce, portfolio, dashboard, landing page, etc.
4945
- **Style keywords**: minimal, playful, professional, elegant, dark mode, etc.
5046
- **Industry**: healthcare, fintech, gaming, education, etc.
@@ -85,30 +81,30 @@ Available stacks: `html-tailwind`, `react`, `nextjs`, `vue`, `svelte`, `swiftui`
8581

8682
### Available Domains
8783

88-
| Domain | Use For | Example Keywords |
89-
| ------------ | ------------------------------------ | -------------------------------------------------------- |
90-
| `product` | Product type recommendations | SaaS, e-commerce, portfolio, healthcare, beauty, service |
91-
| `style` | UI styles, colors, effects | glassmorphism, minimalism, dark mode, brutalism |
92-
| `typography` | Font pairings, Google Fonts | elegant, playful, professional, modern |
93-
| `color` | Color palettes by product type | saas, ecommerce, healthcare, beauty, fintech, service |
94-
| `landing` | Page structure, CTA strategies | hero, hero-centric, testimonial, pricing, social-proof |
95-
| `chart` | Chart types, library recommendations | trend, comparison, timeline, funnel, pie |
96-
| `ux` | Best practices, anti-patterns | animation, accessibility, z-index, loading |
97-
| `prompt` | AI prompts, CSS keywords | (style name) |
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) |
9894

9995
### Available Stacks
10096

101-
| Stack | Focus |
102-
| --------------- | ---------------------------------------------- |
97+
| Stack | Focus |
98+
|-------|-------|
10399
| `html-tailwind` | Tailwind utilities, responsive, a11y (DEFAULT) |
104-
| `react` | State, hooks, performance, patterns |
105-
| `nextjs` | SSR, routing, images, API routes |
106-
| `vue` | Composition API, Pinia, Vue Router |
107-
| `svelte` | Runes, stores, SvelteKit |
108-
| `swiftui` | Views, State, Navigation, Animation |
109-
| `react-native` | Components, Navigation, Lists |
110-
| `flutter` | Widgets, State, Layout, Theming |
111-
| `shadcn` | shadcn/ui components, theming, forms, patterns |
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+
| `shadcn` | shadcn/ui components, theming, forms, patterns |
112108

113109
---
114110

@@ -167,37 +163,37 @@ These are frequently overlooked issues that make UI look unprofessional:
167163

168164
### Icons & Visual Elements
169165

170-
| Rule | Do | Don't |
171-
| -------------------------- | ----------------------------------------------- | -------------------------------------- |
172-
| **No emoji icons** | Use SVG icons (Heroicons, Lucide, Simple Icons) | Use emojis like 🎨 🚀 ⚙️ as UI icons |
173-
| **Stable hover states** | Use color/opacity transitions on hover | Use scale transforms that shift layout |
174-
| **Correct brand logos** | Research official SVG from Simple Icons | Guess or use incorrect logo paths |
175-
| **Consistent icon sizing** | Use fixed viewBox (24x24) with w-6 h-6 | Mix different icon sizes randomly |
166+
| Rule | Do | Don't |
167+
|------|----|----- |
168+
| **No emoji icons** | Use SVG icons (Heroicons, Lucide, Simple Icons) | Use emojis like 🎨 🚀 ⚙️ as UI icons |
169+
| **Stable hover states** | Use color/opacity transitions on hover | Use scale transforms that shift layout |
170+
| **Correct brand logos** | Research official SVG from Simple Icons | Guess or use incorrect logo paths |
171+
| **Consistent icon sizing** | Use fixed viewBox (24x24) with w-6 h-6 | Mix different icon sizes randomly |
176172

177173
### Interaction & Cursor
178174

179-
| Rule | Do | Don't |
180-
| ---------------------- | ----------------------------------------------------- | -------------------------------------------- |
181-
| **Cursor pointer** | Add `cursor-pointer` to all clickable/hoverable cards | Leave default cursor on interactive elements |
182-
| **Hover feedback** | Provide visual feedback (color, shadow, border) | No indication element is interactive |
183-
| **Smooth transitions** | Use `transition-colors duration-200` | Instant state changes or too slow (>500ms) |
175+
| Rule | Do | Don't |
176+
|------|----|----- |
177+
| **Cursor pointer** | Add `cursor-pointer` to all clickable/hoverable cards | Leave default cursor on interactive elements |
178+
| **Hover feedback** | Provide visual feedback (color, shadow, border) | No indication element is interactive |
179+
| **Smooth transitions** | Use `transition-colors duration-200` | Instant state changes or too slow (>500ms) |
184180

185181
### Light/Dark Mode Contrast
186182

187-
| Rule | Do | Don't |
188-
| ------------------------- | ----------------------------------- | --------------------------------------- |
189-
| **Glass card light mode** | Use `bg-white/80` or higher opacity | Use `bg-white/10` (too transparent) |
190-
| **Text contrast light** | Use `#0F172A` (slate-900) for text | Use `#94A3B8` (slate-400) for body text |
191-
| **Muted text light** | Use `#475569` (slate-600) minimum | Use gray-400 or lighter |
192-
| **Border visibility** | Use `border-gray-200` in light mode | Use `border-white/10` (invisible) |
183+
| Rule | Do | Don't |
184+
|------|----|----- |
185+
| **Glass card light mode** | Use `bg-white/80` or higher opacity | Use `bg-white/10` (too transparent) |
186+
| **Text contrast light** | Use `#0F172A` (slate-900) for text | Use `#94A3B8` (slate-400) for body text |
187+
| **Muted text light** | Use `#475569` (slate-600) minimum | Use gray-400 or lighter |
188+
| **Border visibility** | Use `border-gray-200` in light mode | Use `border-white/10` (invisible) |
193189

194190
### Layout & Spacing
195191

196-
| Rule | Do | Don't |
197-
| ------------------------ | ----------------------------------- | -------------------------------------- |
198-
| **Floating navbar** | Add `top-4 left-4 right-4` spacing | Stick navbar to `top-0 left-0 right-0` |
199-
| **Content padding** | Account for fixed navbar height | Let content hide behind fixed elements |
200-
| **Consistent max-width** | Use same `max-w-6xl` or `max-w-7xl` | Mix different container widths |
192+
| Rule | Do | Don't |
193+
|------|----|----- |
194+
| **Floating navbar** | Add `top-4 left-4 right-4` spacing | Stick navbar to `top-0 left-0 right-0` |
195+
| **Content padding** | Account for fixed navbar height | Let content hide behind fixed elements |
196+
| **Consistent max-width** | Use same `max-w-6xl` or `max-w-7xl` | Mix different container widths |
201197

202198
---
203199

@@ -206,35 +202,30 @@ These are frequently overlooked issues that make UI look unprofessional:
206202
Before delivering UI code, verify these items:
207203

208204
### Visual Quality
209-
210205
- [ ] No emojis used as icons (use SVG instead)
211206
- [ ] All icons from consistent icon set (Heroicons/Lucide)
212207
- [ ] Brand logos are correct (verified from Simple Icons)
213208
- [ ] Hover states don't cause layout shift
214209

215210
### Interaction
216-
217211
- [ ] All clickable elements have `cursor-pointer`
218212
- [ ] Hover states provide clear visual feedback
219213
- [ ] Transitions are smooth (150-300ms)
220214
- [ ] Focus states visible for keyboard navigation
221215

222216
### Light/Dark Mode
223-
224217
- [ ] Light mode text has sufficient contrast (4.5:1 minimum)
225218
- [ ] Glass/transparent elements visible in light mode
226219
- [ ] Borders visible in both modes
227220
- [ ] Test both modes before delivery
228221

229222
### Layout
230-
231223
- [ ] Floating elements have proper spacing from edges
232224
- [ ] No content hidden behind fixed navbars
233225
- [ ] Responsive at 320px, 768px, 1024px, 1440px
234226
- [ ] No horizontal scroll on mobile
235227

236228
### Accessibility
237-
238229
- [ ] All images have alt text
239230
- [ ] Form inputs have labels
240231
- [ ] Color is not the only indicator

0 commit comments

Comments
 (0)