omgkit 2.0.7 → 2.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/package.json +2 -2
- package/plugin/skills/backend/api-architecture/SKILL.md +857 -0
- package/plugin/skills/backend/caching-strategies/SKILL.md +755 -0
- package/plugin/skills/backend/event-driven-architecture/SKILL.md +753 -0
- package/plugin/skills/backend/real-time-systems/SKILL.md +635 -0
- package/plugin/skills/databases/database-optimization/SKILL.md +571 -0
- package/plugin/skills/databases/postgresql/SKILL.md +494 -18
- package/plugin/skills/devops/docker/SKILL.md +466 -18
- package/plugin/skills/devops/monorepo-management/SKILL.md +595 -0
- package/plugin/skills/devops/observability/SKILL.md +622 -0
- package/plugin/skills/devops/performance-profiling/SKILL.md +905 -0
- package/plugin/skills/frameworks/nextjs/SKILL.md +407 -44
- package/plugin/skills/frameworks/react/SKILL.md +1006 -32
- package/plugin/skills/frontend/advanced-ui-design/SKILL.md +426 -0
- package/plugin/skills/integrations/ai-integration/SKILL.md +730 -0
- package/plugin/skills/integrations/payment-integration/SKILL.md +735 -0
- package/plugin/skills/languages/python/SKILL.md +489 -25
- package/plugin/skills/languages/typescript/SKILL.md +379 -30
- package/plugin/skills/methodology/problem-solving/SKILL.md +355 -0
- package/plugin/skills/methodology/research-validation/SKILL.md +668 -0
- package/plugin/skills/methodology/sequential-thinking/SKILL.md +260 -0
- package/plugin/skills/mobile/mobile-development/SKILL.md +756 -0
- package/plugin/skills/security/security-hardening/SKILL.md +633 -0
- package/plugin/skills/tools/document-processing/SKILL.md +916 -0
- package/plugin/skills/tools/image-processing/SKILL.md +748 -0
- package/plugin/skills/tools/mcp-development/SKILL.md +883 -0
- package/plugin/skills/tools/media-processing/SKILL.md +831 -0
|
@@ -0,0 +1,426 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: advanced-ui-design
|
|
3
|
+
description: Agency-grade interface design with systematic aesthetic framework (BEAUTIFUL → RIGHT → SATISFYING → PEAK)
|
|
4
|
+
category: frontend
|
|
5
|
+
triggers:
|
|
6
|
+
- ui design
|
|
7
|
+
- beautiful interface
|
|
8
|
+
- professional design
|
|
9
|
+
- aesthetic
|
|
10
|
+
- agency quality
|
|
11
|
+
- stunning ui
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
# Advanced UI Design
|
|
15
|
+
|
|
16
|
+
Create **agency-grade interfaces** using the BEAUTIFUL → RIGHT → SATISFYING → PEAK framework. This skill elevates designs from functional to exceptional through systematic aesthetic principles.
|
|
17
|
+
|
|
18
|
+
## Purpose
|
|
19
|
+
|
|
20
|
+
Transform ordinary interfaces into memorable experiences by applying:
|
|
21
|
+
|
|
22
|
+
- Systematic aesthetic evaluation framework
|
|
23
|
+
- Color theory and emotional design
|
|
24
|
+
- Typography hierarchy mastery
|
|
25
|
+
- Micro-interaction excellence
|
|
26
|
+
- Visual rhythm and spacing systems
|
|
27
|
+
|
|
28
|
+
## The BRSP Framework
|
|
29
|
+
|
|
30
|
+
### BEAUTIFUL (Visual Appeal)
|
|
31
|
+
```
|
|
32
|
+
CHECKLIST: First Impression (< 3 seconds)
|
|
33
|
+
==========================================
|
|
34
|
+
□ Color palette evokes intended emotion
|
|
35
|
+
□ Typography is readable and elegant
|
|
36
|
+
□ Whitespace feels intentional, not empty
|
|
37
|
+
□ Visual hierarchy guides the eye
|
|
38
|
+
□ Images/illustrations are high quality
|
|
39
|
+
□ No visual clutter or competing elements
|
|
40
|
+
|
|
41
|
+
SCORING:
|
|
42
|
+
- Does it make users want to explore more?
|
|
43
|
+
- Would users screenshot and share it?
|
|
44
|
+
- Does it feel premium/trustworthy?
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
### RIGHT (Functional Correctness)
|
|
48
|
+
```
|
|
49
|
+
CHECKLIST: Does It Work?
|
|
50
|
+
========================
|
|
51
|
+
□ All interactive elements are obvious
|
|
52
|
+
□ Forms validate and provide feedback
|
|
53
|
+
□ Loading states are clear
|
|
54
|
+
□ Error states are helpful
|
|
55
|
+
□ Navigation is intuitive
|
|
56
|
+
□ Responsive across devices
|
|
57
|
+
□ Accessibility standards met (WCAG 2.1)
|
|
58
|
+
|
|
59
|
+
SCORING:
|
|
60
|
+
- Can a new user complete core tasks?
|
|
61
|
+
- Are there any "where do I click?" moments?
|
|
62
|
+
- Does it work for all users?
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
### SATISFYING (Emotional Response)
|
|
66
|
+
```
|
|
67
|
+
CHECKLIST: How Does It Feel?
|
|
68
|
+
============================
|
|
69
|
+
□ Interactions provide immediate feedback
|
|
70
|
+
□ Animations are smooth and purposeful
|
|
71
|
+
□ Success states celebrate the user
|
|
72
|
+
□ Transitions feel natural
|
|
73
|
+
□ Sounds (if any) enhance experience
|
|
74
|
+
□ Progress indicators reduce anxiety
|
|
75
|
+
|
|
76
|
+
SCORING:
|
|
77
|
+
- Do users smile when using it?
|
|
78
|
+
- Would they use it again?
|
|
79
|
+
- Does it reduce cognitive load?
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
### PEAK (Memorable Excellence)
|
|
83
|
+
```
|
|
84
|
+
CHECKLIST: What Makes It Exceptional?
|
|
85
|
+
=====================================
|
|
86
|
+
□ Unique design elements (signature)
|
|
87
|
+
□ Delightful surprises (easter eggs)
|
|
88
|
+
□ Storytelling through design
|
|
89
|
+
□ Emotional connection established
|
|
90
|
+
□ Brand personality shines through
|
|
91
|
+
□ Sets new standard in category
|
|
92
|
+
|
|
93
|
+
SCORING:
|
|
94
|
+
- Will users remember this in 6 months?
|
|
95
|
+
- Will they tell others about it?
|
|
96
|
+
- Does it define the brand?
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
## Features
|
|
100
|
+
|
|
101
|
+
### 1. Color System Design
|
|
102
|
+
```css
|
|
103
|
+
/* Primary color with semantic variations */
|
|
104
|
+
:root {
|
|
105
|
+
/* Base palette */
|
|
106
|
+
--primary-50: #eff6ff;
|
|
107
|
+
--primary-100: #dbeafe;
|
|
108
|
+
--primary-500: #3b82f6;
|
|
109
|
+
--primary-600: #2563eb;
|
|
110
|
+
--primary-900: #1e3a8a;
|
|
111
|
+
|
|
112
|
+
/* Semantic colors */
|
|
113
|
+
--success: #10b981;
|
|
114
|
+
--warning: #f59e0b;
|
|
115
|
+
--error: #ef4444;
|
|
116
|
+
--info: #3b82f6;
|
|
117
|
+
|
|
118
|
+
/* Neutral scale */
|
|
119
|
+
--gray-50: #f9fafb;
|
|
120
|
+
--gray-100: #f3f4f6;
|
|
121
|
+
--gray-500: #6b7280;
|
|
122
|
+
--gray-900: #111827;
|
|
123
|
+
|
|
124
|
+
/* Surface colors */
|
|
125
|
+
--surface-primary: var(--gray-50);
|
|
126
|
+
--surface-elevated: white;
|
|
127
|
+
--surface-overlay: rgba(0, 0, 0, 0.5);
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
/* Color usage rules:
|
|
131
|
+
- Primary: CTAs, links, active states
|
|
132
|
+
- Gray: Text, borders, backgrounds
|
|
133
|
+
- Semantic: Feedback and status only
|
|
134
|
+
- Limit: 3 colors + neutrals per view
|
|
135
|
+
*/
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
### 2. Typography Hierarchy
|
|
139
|
+
```css
|
|
140
|
+
/* Type scale based on 1.25 ratio */
|
|
141
|
+
:root {
|
|
142
|
+
--text-xs: 0.75rem; /* 12px - Labels, captions */
|
|
143
|
+
--text-sm: 0.875rem; /* 14px - Secondary text */
|
|
144
|
+
--text-base: 1rem; /* 16px - Body text */
|
|
145
|
+
--text-lg: 1.125rem; /* 18px - Lead paragraphs */
|
|
146
|
+
--text-xl: 1.25rem; /* 20px - Section headers */
|
|
147
|
+
--text-2xl: 1.5rem; /* 24px - Card titles */
|
|
148
|
+
--text-3xl: 1.875rem; /* 30px - Page titles */
|
|
149
|
+
--text-4xl: 2.25rem; /* 36px - Hero headlines */
|
|
150
|
+
--text-5xl: 3rem; /* 48px - Display text */
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
/* Font weight usage */
|
|
154
|
+
.heading { font-weight: 600; } /* Semibold for headings */
|
|
155
|
+
.body { font-weight: 400; } /* Regular for body */
|
|
156
|
+
.emphasis { font-weight: 500; } /* Medium for emphasis */
|
|
157
|
+
|
|
158
|
+
/* Line height rules */
|
|
159
|
+
.heading { line-height: 1.2; } /* Tight for headings */
|
|
160
|
+
.body { line-height: 1.6; } /* Relaxed for body */
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
### 3. Spacing System (8-Point Grid)
|
|
164
|
+
```css
|
|
165
|
+
/* Spacing scale */
|
|
166
|
+
:root {
|
|
167
|
+
--space-1: 0.25rem; /* 4px - Tight spacing */
|
|
168
|
+
--space-2: 0.5rem; /* 8px - Related elements */
|
|
169
|
+
--space-3: 0.75rem; /* 12px - Form gaps */
|
|
170
|
+
--space-4: 1rem; /* 16px - Standard gap */
|
|
171
|
+
--space-6: 1.5rem; /* 24px - Section padding */
|
|
172
|
+
--space-8: 2rem; /* 32px - Card padding */
|
|
173
|
+
--space-12: 3rem; /* 48px - Section margins */
|
|
174
|
+
--space-16: 4rem; /* 64px - Page sections */
|
|
175
|
+
--space-24: 6rem; /* 96px - Hero spacing */
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
/* Usage patterns:
|
|
179
|
+
- space-1: Icon padding, badge spacing
|
|
180
|
+
- space-2: Input padding, button gaps
|
|
181
|
+
- space-4: Card content gaps
|
|
182
|
+
- space-8: Section internal padding
|
|
183
|
+
- space-16: Between major sections
|
|
184
|
+
*/
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
### 4. Micro-Interaction Library
|
|
188
|
+
```css
|
|
189
|
+
/* Button hover effect */
|
|
190
|
+
.btn {
|
|
191
|
+
transition: all 0.2s ease;
|
|
192
|
+
}
|
|
193
|
+
.btn:hover {
|
|
194
|
+
transform: translateY(-2px);
|
|
195
|
+
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
|
|
196
|
+
}
|
|
197
|
+
.btn:active {
|
|
198
|
+
transform: translateY(0);
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
/* Card hover effect */
|
|
202
|
+
.card {
|
|
203
|
+
transition: all 0.3s ease;
|
|
204
|
+
}
|
|
205
|
+
.card:hover {
|
|
206
|
+
transform: translateY(-4px);
|
|
207
|
+
box-shadow: 0 12px 24px rgba(0, 0, 0, 0.1);
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
/* Focus ring for accessibility */
|
|
211
|
+
.interactive:focus-visible {
|
|
212
|
+
outline: 2px solid var(--primary-500);
|
|
213
|
+
outline-offset: 2px;
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
/* Loading skeleton pulse */
|
|
217
|
+
@keyframes pulse {
|
|
218
|
+
0%, 100% { opacity: 1; }
|
|
219
|
+
50% { opacity: 0.5; }
|
|
220
|
+
}
|
|
221
|
+
.skeleton {
|
|
222
|
+
animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
|
|
223
|
+
}
|
|
224
|
+
```
|
|
225
|
+
|
|
226
|
+
### 5. Emotional Design Patterns
|
|
227
|
+
```jsx
|
|
228
|
+
// Success celebration
|
|
229
|
+
const SuccessState = () => (
|
|
230
|
+
<motion.div
|
|
231
|
+
initial={{ scale: 0.8, opacity: 0 }}
|
|
232
|
+
animate={{ scale: 1, opacity: 1 }}
|
|
233
|
+
transition={{ type: "spring", stiffness: 200 }}
|
|
234
|
+
>
|
|
235
|
+
<CheckCircle className="text-green-500 w-16 h-16" />
|
|
236
|
+
<h2>Payment Successful!</h2>
|
|
237
|
+
<Confetti /> {/* Subtle celebration */}
|
|
238
|
+
</motion.div>
|
|
239
|
+
);
|
|
240
|
+
|
|
241
|
+
// Empty state with personality
|
|
242
|
+
const EmptyState = () => (
|
|
243
|
+
<div className="text-center py-12">
|
|
244
|
+
<Illustration name="empty-inbox" />
|
|
245
|
+
<h3>No messages yet</h3>
|
|
246
|
+
<p className="text-gray-500">
|
|
247
|
+
When you receive messages, they'll show up here.
|
|
248
|
+
<br />
|
|
249
|
+
<span className="text-sm">
|
|
250
|
+
Pro tip: Say hi to someone! 👋
|
|
251
|
+
</span>
|
|
252
|
+
</p>
|
|
253
|
+
</div>
|
|
254
|
+
);
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
## Use Cases
|
|
258
|
+
|
|
259
|
+
### Landing Page Design
|
|
260
|
+
```
|
|
261
|
+
BRSP Assessment:
|
|
262
|
+
|
|
263
|
+
BEAUTIFUL (8/10):
|
|
264
|
+
✓ Hero gradient creates visual interest
|
|
265
|
+
✓ Clean typography hierarchy
|
|
266
|
+
✓ High-quality product screenshots
|
|
267
|
+
△ Could use more whitespace in features section
|
|
268
|
+
|
|
269
|
+
RIGHT (9/10):
|
|
270
|
+
✓ Clear CTA above the fold
|
|
271
|
+
✓ Mobile responsive
|
|
272
|
+
✓ Fast load time (1.2s)
|
|
273
|
+
✓ Accessibility checked
|
|
274
|
+
△ Social proof could be more prominent
|
|
275
|
+
|
|
276
|
+
SATISFYING (7/10):
|
|
277
|
+
✓ Smooth scroll animations
|
|
278
|
+
✓ Interactive pricing toggle
|
|
279
|
+
△ Could add micro-interactions to cards
|
|
280
|
+
△ Success state for signup needs work
|
|
281
|
+
|
|
282
|
+
PEAK (6/10):
|
|
283
|
+
✓ Memorable hero illustration
|
|
284
|
+
△ Missing brand signature element
|
|
285
|
+
△ No delightful surprises
|
|
286
|
+
△ Feels similar to competitors
|
|
287
|
+
|
|
288
|
+
PRIORITY IMPROVEMENTS:
|
|
289
|
+
1. Add signature animation to hero
|
|
290
|
+
2. Create memorable loading state
|
|
291
|
+
3. Add personality to empty states
|
|
292
|
+
```
|
|
293
|
+
|
|
294
|
+
### Dashboard Design
|
|
295
|
+
```jsx
|
|
296
|
+
// Dashboard with BRSP principles
|
|
297
|
+
|
|
298
|
+
export function Dashboard() {
|
|
299
|
+
return (
|
|
300
|
+
<div className="min-h-screen bg-gray-50">
|
|
301
|
+
{/* BEAUTIFUL: Clean header with visual hierarchy */}
|
|
302
|
+
<header className="bg-white border-b border-gray-200 px-6 py-4">
|
|
303
|
+
<h1 className="text-2xl font-semibold text-gray-900">
|
|
304
|
+
Good morning, Sarah 👋
|
|
305
|
+
</h1>
|
|
306
|
+
<p className="text-gray-500 mt-1">
|
|
307
|
+
Here's what's happening today
|
|
308
|
+
</p>
|
|
309
|
+
</header>
|
|
310
|
+
|
|
311
|
+
{/* RIGHT: Clear information architecture */}
|
|
312
|
+
<main className="p-6 grid grid-cols-12 gap-6">
|
|
313
|
+
{/* Key metrics - immediate visibility */}
|
|
314
|
+
<MetricCards className="col-span-12" />
|
|
315
|
+
|
|
316
|
+
{/* Primary content area */}
|
|
317
|
+
<ActivityFeed className="col-span-8" />
|
|
318
|
+
|
|
319
|
+
{/* Secondary information */}
|
|
320
|
+
<Sidebar className="col-span-4" />
|
|
321
|
+
</main>
|
|
322
|
+
|
|
323
|
+
{/* SATISFYING: Helpful feedback */}
|
|
324
|
+
<Toast
|
|
325
|
+
type="success"
|
|
326
|
+
message="Report exported successfully"
|
|
327
|
+
action={{ label: "View", onClick: viewReport }}
|
|
328
|
+
/>
|
|
329
|
+
|
|
330
|
+
{/* PEAK: Delightful detail */}
|
|
331
|
+
<AchievementBadge
|
|
332
|
+
title="First Week Complete!"
|
|
333
|
+
description="You've been using the app for 7 days"
|
|
334
|
+
/>
|
|
335
|
+
</div>
|
|
336
|
+
);
|
|
337
|
+
}
|
|
338
|
+
```
|
|
339
|
+
|
|
340
|
+
### E-commerce Product Page
|
|
341
|
+
```
|
|
342
|
+
DESIGN SPECIFICATIONS:
|
|
343
|
+
|
|
344
|
+
LAYOUT:
|
|
345
|
+
┌─────────────────────────────────────────┐
|
|
346
|
+
│ ┌─────────┐ Product Name │
|
|
347
|
+
│ │ │ ★★★★☆ (128 reviews) │
|
|
348
|
+
│ │ IMAGE │ │
|
|
349
|
+
│ │ GALLERY│ $149.00 $199.00 │
|
|
350
|
+
│ │ │ │
|
|
351
|
+
│ └─────────┘ [Select Size ▾] │
|
|
352
|
+
│ [Add to Cart] [♡] │
|
|
353
|
+
│ ─────────────── │
|
|
354
|
+
│ 📦 Free shipping │
|
|
355
|
+
│ ↩️ 30-day returns │
|
|
356
|
+
└─────────────────────────────────────────┘
|
|
357
|
+
|
|
358
|
+
INTERACTIONS:
|
|
359
|
+
- Image gallery: Swipe + zoom on mobile
|
|
360
|
+
- Size selector: Visual size guide
|
|
361
|
+
- Add to cart: Satisfying animation + haptic
|
|
362
|
+
- Wishlist: Heart fills with animation
|
|
363
|
+
|
|
364
|
+
TRUST SIGNALS:
|
|
365
|
+
- Verified purchase badges on reviews
|
|
366
|
+
- "12 people viewing now" social proof
|
|
367
|
+
- Security badges at checkout
|
|
368
|
+
```
|
|
369
|
+
|
|
370
|
+
## Best Practices
|
|
371
|
+
|
|
372
|
+
### Do's
|
|
373
|
+
- **Start with content** - Design around real content, not lorem ipsum
|
|
374
|
+
- **Use 8-point grid** - Consistent spacing creates harmony
|
|
375
|
+
- **Limit color palette** - 3 colors + neutrals maximum
|
|
376
|
+
- **Test with real users** - Assumptions fail, testing wins
|
|
377
|
+
- **Document decisions** - Future you will thank present you
|
|
378
|
+
|
|
379
|
+
### Don'ts
|
|
380
|
+
- Don't use more than 2 font families
|
|
381
|
+
- Don't ignore accessibility (contrast, focus states)
|
|
382
|
+
- Don't overload with animations
|
|
383
|
+
- Don't design for yourself - design for users
|
|
384
|
+
- Don't skip mobile-first approach
|
|
385
|
+
|
|
386
|
+
### Design Checklist
|
|
387
|
+
```
|
|
388
|
+
Before shipping, verify:
|
|
389
|
+
|
|
390
|
+
Visual Polish:
|
|
391
|
+
□ Consistent spacing throughout
|
|
392
|
+
□ Proper text hierarchy
|
|
393
|
+
□ Color contrast passes WCAG AA
|
|
394
|
+
□ Images optimized and responsive
|
|
395
|
+
□ Icons consistent in style/weight
|
|
396
|
+
|
|
397
|
+
Interaction Quality:
|
|
398
|
+
□ All hover states defined
|
|
399
|
+
□ Focus states visible
|
|
400
|
+
□ Loading states designed
|
|
401
|
+
□ Error states helpful
|
|
402
|
+
□ Success states celebratory
|
|
403
|
+
|
|
404
|
+
Responsiveness:
|
|
405
|
+
□ Mobile layout tested
|
|
406
|
+
□ Tablet breakpoint checked
|
|
407
|
+
□ Large screen utilizes space
|
|
408
|
+
□ Touch targets 44px minimum
|
|
409
|
+
□ No horizontal scroll
|
|
410
|
+
```
|
|
411
|
+
|
|
412
|
+
## Related Skills
|
|
413
|
+
|
|
414
|
+
- **frontend-design** - Foundation for design implementation
|
|
415
|
+
- **tailwindcss** - Utility classes for rapid styling
|
|
416
|
+
- **shadcn-ui** - Pre-built accessible components
|
|
417
|
+
- **accessibility** - WCAG compliance requirements
|
|
418
|
+
- **responsive** - Mobile-first design patterns
|
|
419
|
+
|
|
420
|
+
## Reference Resources
|
|
421
|
+
|
|
422
|
+
- [Laws of UX](https://lawsofux.com) - Psychology principles
|
|
423
|
+
- [Refactoring UI](https://refactoringui.com) - Practical design tips
|
|
424
|
+
- [Design Systems](https://designsystems.com) - System thinking
|
|
425
|
+
- [Dribbble](https://dribbble.com) - Visual inspiration
|
|
426
|
+
- [Mobbin](https://mobbin.com) - Mobile pattern library
|