Frontend Enhancer
Overview
The Frontend Enhancer skill transforms Next.js applications into visually stunning, modern web experiences. It provides production-ready components, comprehensive design guidelines, curated color palettes, smooth animations, and flexible layout templates optimized for responsiveness and accessibility.
When to Use This Skill
Invoke this skill when:
- Improving the visual appearance of an existing application
- Creating new UI components with modern styling
- Selecting color schemes and design themes
- Adding animations and transitions
- Building responsive layouts for different screen sizes
- Implementing hero sections, feature grids, or landing pages
- Enhancing user experience with better visual hierarchy
- Applying consistent design patterns across an application
Core Capabilities
1. Component Library
Use pre-built, production-ready React components with multiple variants and states:
Button Component (assets/button-variants.tsx):
- Variants: primary, secondary, outline, ghost, danger
- Sizes: sm, md, lg
- Loading states with animated spinner
- Full TypeScript support
- Accessibility features built-in
Card Component (assets/card-variants.tsx):
- Variants: default, bordered, elevated, interactive
- Subcomponents: CardHeader, CardTitle, CardDescription, CardContent, CardFooter
- Hover effects and transitions
- Flexible padding options
Input Components (assets/input-variants.tsx):
- Text inputs with validation states
- Textarea component
- Left/right icon support
- Error and helper text display
- Label integration
- Full accessibility support
Implementation workflow:
- Copy the desired component file from
assets/ to your project's components directory
- Ensure the
cn utility function exists (see assets/utils-cn.ts)
- Customize colors, spacing, or variants to match your brand
- Import and use the component in your pages
2. Layout Templates
Use pre-designed, responsive layout patterns for common page sections:
Hero Section (assets/layout-hero-section.tsx):
- Three variants: centered, split, minimal
- Support for CTAs (primary and secondary)
- Optional background gradients
- Image/illustration support
- Built-in animations
Feature Grid (assets/layout-feature-grid.tsx):
- Configurable columns (2, 3, or 4)
- Icon integration
- Staggered animations
- Hover effects
- Fully responsive
Implementation workflow:
- Copy the layout component from
assets/ to your components directory
- Customize the props and content to match your needs
- Integrate with your existing pages
- Adjust styling as needed for your brand
3. Design System Guidelines
Reference comprehensive design principles for consistent, professional interfaces:
Design Principles (references/design_principles.md):
- Visual hierarchy best practices
- Spacing and rhythm guidelines
- Typography recommendations
- Color theory and usage
- Consistency standards
- Responsiveness strategies
- Accessibility guidelines (WCAG AA/AAA)
- Common layout patterns
When to reference:
- Starting a new design
- Making decisions about visual hierarchy
- Ensuring accessibility compliance
- Establishing consistency across the app
- Reviewing design quality
How to use:
Read references/design_principles.md to understand best practices, then apply them to your specific design challenges. The document covers both theory and practical implementation.
4. Color Palettes
Access professionally curated color schemes optimized for modern web applications:
Available Palettes (references/color_palettes.md):
- Corporate Blue - Professional, trustworthy (business apps, SaaS)
- Vibrant Purple - Creative, modern (creative tools, portfolios)
- Minimalist Gray - Clean, sophisticated (minimalist designs)
- Warm Sunset - Energetic, friendly (consumer apps, e-commerce)
- Ocean Fresh - Calm, professional (health, finance apps)
- Dark Mode - Modern, eye-friendly (developer tools, dashboards)
Each palette includes:
- Primary and secondary colors
- Accent colors
- Background and surface colors
- Text colors (primary and secondary)
- Semantic colors (success, warning, error)
- Border colors
Implementation options:
- Tailwind CSS: Add colors to
tailwind.config.js (examples provided)
- CSS Variables: Use custom properties in global CSS (examples provided)
- Inline styles: Reference hex codes directly in components
Selection workflow:
- Review
references/color_palettes.md to see all available palettes
- Consider your application's purpose and brand identity
- Choose a palette that matches your goals
- Implement using Tailwind config or CSS variables
- Adjust specific colors if needed to match your brand
5. Animations and Transitions
Add smooth, professional animations using pre-built CSS classes and keyframes:
Animation Library (assets/animations.css):
- Fade animations (fadeIn, fadeOut, fadeInUp, fadeInDown)
- Slide animations (slideInLeft, slideInRight)
- Scale animations (scaleIn, scaleOut)
- Utility animations (bounce, pulse, spin)
- Skeleton loading (shimmer effect)
- Hover effects (lift, glow, scale)
- Stagger delays for list animations
Accessibility:
All animations respect prefers-reduced-motion for accessibility compliance.
Implementation workflow:
- Copy
assets/animations.css to your global CSS file (or create a separate animations file)
- Apply utility classes like
animate-fade-in-up, hover-lift, etc.
- Use stagger classes for sequential animations in lists
- Customize duration and easing if needed
Best practices:
- Keep animations subtle (200-300ms for micro-interactions)
- Use animations to guide user attention
- Avoid excessive motion that distracts
- Always test with
prefers-reduced-motion enabled
Enhancement Workflow
Follow this systematic approach when enhancing a frontend application:
Step 1: Assess Current State
- Identify areas lacking visual polish
- Note inconsistent styling patterns
- Check responsive behavior
- Review accessibility issues
- Evaluate color scheme and typography
Step 2: Select Design Direction
- Choose a color palette from
references/color_palettes.md
- Review design principles in
references/design_principles.md
- Decide on component variants and styles
- Plan layout improvements
Step 3: Implement Foundation
- Set up the
cn utility function (assets/utils-cn.ts)
- Configure chosen color palette (Tailwind or CSS variables)
- Add animation CSS (
assets/animations.css) to global styles
- Ensure consistent spacing scale
Step 4: Apply Components
- Replace basic elements with enhanced components from
assets/
- Implement layout templates for key pages
- Apply consistent styling across the application
- Add animations and transitions
Step 5: Refine and Polish
- Test responsiveness across device sizes
- Verify accessibility (keyboard navigation, contrast, screen readers)
- Ensure consistent hover/focus states
- Optimize performance (check animation performance)
- Test with
prefers-reduced-motion
Step 6: Final Review
- Check visual hierarchy on all pages
- Verify color consistency
- Test all interactive states
- Validate responsive breakpoints
- Review accessibility compliance
Utility Function Setup
Most components require the cn utility function for class name merging. To set it up:
- Copy
assets/utils-cn.ts to your project's lib/utils.ts
- Install dependencies:
npm install clsx tailwind-merge
- Import in components:
import { cn } from '@/lib/utils';
Responsive Design Strategy
All components and layouts follow a mobile-first approach:
- Base styles - Optimized for mobile (320px+)
- sm breakpoint - Small tablets (640px+)
- md breakpoint - Tablets (768px+)
- lg breakpoint - Desktops (1024px+)
- xl breakpoint - Large desktops (1280px+)
Test each breakpoint to ensure proper layout and readability.
Accessibility Checklist
Ensure all enhanced interfaces meet these standards:
Customization Guide
To adapt components and templates to your brand:
- Colors: Update color values in palette config or component files
- Typography: Adjust font sizes, weights, and families
- Spacing: Modify padding and margin values
- Border Radius: Change rounded corners (e.g.,
rounded-lg to rounded-xl)
- Shadows: Adjust shadow intensity (e.g.,
shadow-md to shadow-lg)
- Animations: Modify duration and easing functions
Resources Summary
This skill includes:
references/
color_palettes.md - Six professionally designed color schemes with implementation examples
design_principles.md - Comprehensive design guidelines covering visual hierarchy, typography, accessibility, and common patterns
assets/
button-variants.tsx - Modern button component with 5 variants and 3 sizes
card-variants.tsx - Flexible card component with subcomponents
input-variants.tsx - Input and textarea components with validation states
layout-hero-section.tsx - Hero section with 3 layout variants
layout-feature-grid.tsx - Responsive feature grid with configurable columns
animations.css - Complete animation library with accessibility support
utils-cn.ts - Utility function for class name merging
Tips for Success
- Start with a plan: Review design principles before making changes
- Choose one palette: Stick to a single color scheme for consistency
- Test on real devices: Emulators don't always show true responsive behavior
- Keep it simple: Modern design favors simplicity over complexity
- Prioritize accessibility: Design for all users from the start
- Iterate based on feedback: Show designs to users and refine
- Maintain consistency: Use the same patterns throughout your application
- Performance matters: Keep animations smooth (60fps) and optimize images
Common Use Cases
Enhancing an Existing App
- Select a color palette and implement it
- Replace basic buttons/inputs with enhanced components
- Add subtle animations to improve feedback
- Review and improve spacing consistency
- Ensure responsive behavior across devices
Building a Landing Page
- Use hero section layout as the focal point
- Add feature grid to showcase key features
- Implement consistent button styles for CTAs
- Add staggered animations for visual interest
- Test responsiveness thoroughly
Creating a Dashboard
- Use card components for data sections
- Implement consistent spacing and hierarchy
- Choose a professional color palette
- Add skeleton loaders for data fetching
- Ensure touch-friendly controls on mobile
Redesigning Forms
- Replace inputs with enhanced input components
- Add clear error and validation states
- Ensure proper label associations
- Implement loading states for submission
- Test keyboard navigation flow
1---2name: frontend-enhancer3description: This skill should be used when enhancing the visual design and aesthetics of Next.js web applications. It provides modern UI components, design patterns, color palettes, animations, and layout templates. Use this skill for tasks like improving styling, creating responsive designs, implementing modern UI patterns, adding animations, selecting color schemes, or building aesthetically pleasing frontend interfaces.4---5
6# Frontend Enhancer
7
8## Overview
9
10The Frontend Enhancer skill transforms Next.js applications into visually stunning, modern web experiences. It provides production-ready components, comprehensive design guidelines, curated color palettes, smooth animations, and flexible layout templates optimized for responsiveness and accessibility.
11
12## When to Use This Skill
13
14Invoke this skill when:
15- Improving the visual appearance of an existing application
16- Creating new UI components with modern styling
17- Selecting color schemes and design themes
18- Adding animations and transitions
19- Building responsive layouts for different screen sizes
20- Implementing hero sections, feature grids, or landing pages
21- Enhancing user experience with better visual hierarchy
22- Applying consistent design patterns across an application
23
24## Core Capabilities
25
26### 1. Component Library
27
28Use pre-built, production-ready React components with multiple variants and states:
29
30**Button Component** (`assets/button-variants.tsx`):
31- Variants: primary, secondary, outline, ghost, danger
32- Sizes: sm, md, lg
33- Loading states with animated spinner
34- Full TypeScript support
35- Accessibility features built-in
36
37**Card Component** (`assets/card-variants.tsx`):
38- Variants: default, bordered, elevated, interactive
39- Subcomponents: CardHeader, CardTitle, CardDescription, CardContent, CardFooter
40- Hover effects and transitions
41- Flexible padding options
42
43**Input Components** (`assets/input-variants.tsx`):
44- Text inputs with validation states
45- Textarea component
46- Left/right icon support
47- Error and helper text display
48- Label integration
49- Full accessibility support
50
51**Implementation workflow:**
521. Copy the desired component file from `assets/` to your project's components directory
532. Ensure the `cn` utility function exists (see `assets/utils-cn.ts`)
543. Customize colors, spacing, or variants to match your brand
554. Import and use the component in your pages
56
57### 2. Layout Templates
58
59Use pre-designed, responsive layout patterns for common page sections:
60
61**Hero Section** (`assets/layout-hero-section.tsx`):
62- Three variants: centered, split, minimal
63- Support for CTAs (primary and secondary)
64- Optional background gradients
65- Image/illustration support
66- Built-in animations
67
68**Feature Grid** (`assets/layout-feature-grid.tsx`):
69- Configurable columns (2, 3, or 4)
70- Icon integration
71- Staggered animations
72- Hover effects
73- Fully responsive
74
75**Implementation workflow:**
761. Copy the layout component from `assets/` to your components directory
772. Customize the props and content to match your needs
783. Integrate with your existing pages
794. Adjust styling as needed for your brand
80
81### 3. Design System Guidelines
82
83Reference comprehensive design principles for consistent, professional interfaces:
84
85**Design Principles** (`references/design_principles.md`):
86- Visual hierarchy best practices
87- Spacing and rhythm guidelines
88- Typography recommendations
89- Color theory and usage
90- Consistency standards
91- Responsiveness strategies
92- Accessibility guidelines (WCAG AA/AAA)
93- Common layout patterns
94
95**When to reference:**
96- Starting a new design
97- Making decisions about visual hierarchy
98- Ensuring accessibility compliance
99- Establishing consistency across the app
100- Reviewing design quality
101
102**How to use:**
103Read `references/design_principles.md` to understand best practices, then apply them to your specific design challenges. The document covers both theory and practical implementation.
104
105### 4. Color Palettes
106
107Access professionally curated color schemes optimized for modern web applications:
108
109**Available Palettes** (`references/color_palettes.md`):
1101. **Corporate Blue** - Professional, trustworthy (business apps, SaaS)
1112. **Vibrant Purple** - Creative, modern (creative tools, portfolios)
1123. **Minimalist Gray** - Clean, sophisticated (minimalist designs)
1134. **Warm Sunset** - Energetic, friendly (consumer apps, e-commerce)
1145. **Ocean Fresh** - Calm, professional (health, finance apps)
1156. **Dark Mode** - Modern, eye-friendly (developer tools, dashboards)
116
117Each palette includes:
118- Primary and secondary colors
119- Accent colors
120- Background and surface colors
121- Text colors (primary and secondary)
122- Semantic colors (success, warning, error)
123- Border colors
124
125**Implementation options:**
1261. **Tailwind CSS**: Add colors to `tailwind.config.js` (examples provided)
1272. **CSS Variables**: Use custom properties in global CSS (examples provided)
1283. **Inline styles**: Reference hex codes directly in components
129
130**Selection workflow:**
1311. Review `references/color_palettes.md` to see all available palettes
1322. Consider your application's purpose and brand identity
1333. Choose a palette that matches your goals
1344. Implement using Tailwind config or CSS variables
1355. Adjust specific colors if needed to match your brand
136
137### 5. Animations and Transitions
138
139Add smooth, professional animations using pre-built CSS classes and keyframes:
140
141**Animation Library** (`assets/animations.css`):
142- Fade animations (fadeIn, fadeOut, fadeInUp, fadeInDown)
143- Slide animations (slideInLeft, slideInRight)
144- Scale animations (scaleIn, scaleOut)
145- Utility animations (bounce, pulse, spin)
146- Skeleton loading (shimmer effect)
147- Hover effects (lift, glow, scale)
148- Stagger delays for list animations
149
150**Accessibility:**
151All animations respect `prefers-reduced-motion` for accessibility compliance.
152
153**Implementation workflow:**
1541. Copy `assets/animations.css` to your global CSS file (or create a separate animations file)
1552. Apply utility classes like `animate-fade-in-up`, `hover-lift`, etc.
1563. Use stagger classes for sequential animations in lists
1574. Customize duration and easing if needed
158
159**Best practices:**
160- Keep animations subtle (200-300ms for micro-interactions)
161- Use animations to guide user attention
162- Avoid excessive motion that distracts
163- Always test with `prefers-reduced-motion` enabled
164
165## Enhancement Workflow
166
167Follow this systematic approach when enhancing a frontend application:
168
169### Step 1: Assess Current State
170- Identify areas lacking visual polish
171- Note inconsistent styling patterns
172- Check responsive behavior
173- Review accessibility issues
174- Evaluate color scheme and typography
175
176### Step 2: Select Design Direction
177- Choose a color palette from `references/color_palettes.md`
178- Review design principles in `references/design_principles.md`
179- Decide on component variants and styles
180- Plan layout improvements
181
182### Step 3: Implement Foundation
183- Set up the `cn` utility function (`assets/utils-cn.ts`)
184- Configure chosen color palette (Tailwind or CSS variables)
185- Add animation CSS (`assets/animations.css`) to global styles
186- Ensure consistent spacing scale
187
188### Step 4: Apply Components
189- Replace basic elements with enhanced components from `assets/`
190- Implement layout templates for key pages
191- Apply consistent styling across the application
192- Add animations and transitions
193
194### Step 5: Refine and Polish
195- Test responsiveness across device sizes
196- Verify accessibility (keyboard navigation, contrast, screen readers)
197- Ensure consistent hover/focus states
198- Optimize performance (check animation performance)
199- Test with `prefers-reduced-motion`
200
201### Step 6: Final Review
202- Check visual hierarchy on all pages
203- Verify color consistency
204- Test all interactive states
205- Validate responsive breakpoints
206- Review accessibility compliance
207
208## Utility Function Setup
209
210Most components require the `cn` utility function for class name merging. To set it up:
211
2121. Copy `assets/utils-cn.ts` to your project's `lib/utils.ts`
2132. Install dependencies:
214 ```bash
215 npm install clsx tailwind-merge
216 ```
2173. Import in components:
218 ```typescript
219 import { cn } from '@/lib/utils';
220 ```
221
222## Responsive Design Strategy
223
224All components and layouts follow a mobile-first approach:
225
2261. **Base styles** - Optimized for mobile (320px+)
2272. **sm breakpoint** - Small tablets (640px+)
2283. **md breakpoint** - Tablets (768px+)
2294. **lg breakpoint** - Desktops (1024px+)
2305. **xl breakpoint** - Large desktops (1280px+)
231
232Test each breakpoint to ensure proper layout and readability.
233
234## Accessibility Checklist
235
236Ensure all enhanced interfaces meet these standards:
237
238- [ ] Color contrast meets WCAG AA (4.5:1 for text)
239- [ ] All interactive elements are keyboard accessible
240- [ ] Focus indicators are visible and clear
241- [ ] Semantic HTML is used (nav, main, article, etc.)
242- [ ] Images have alt text
243- [ ] Forms have proper labels
244- [ ] Animations respect prefers-reduced-motion
245- [ ] Touch targets are at least 44x44px
246
247## Customization Guide
248
249To adapt components and templates to your brand:
250
2511. **Colors**: Update color values in palette config or component files
2522. **Typography**: Adjust font sizes, weights, and families
2533. **Spacing**: Modify padding and margin values
2544. **Border Radius**: Change rounded corners (e.g., `rounded-lg` to `rounded-xl`)
2555. **Shadows**: Adjust shadow intensity (e.g., `shadow-md` to `shadow-lg`)
2566. **Animations**: Modify duration and easing functions
257
258## Resources Summary
259
260This skill includes:
261
262### references/
263- `color_palettes.md` - Six professionally designed color schemes with implementation examples
264- `design_principles.md` - Comprehensive design guidelines covering visual hierarchy, typography, accessibility, and common patterns
265
266### assets/
267- `button-variants.tsx` - Modern button component with 5 variants and 3 sizes
268- `card-variants.tsx` - Flexible card component with subcomponents
269- `input-variants.tsx` - Input and textarea components with validation states
270- `layout-hero-section.tsx` - Hero section with 3 layout variants
271- `layout-feature-grid.tsx` - Responsive feature grid with configurable columns
272- `animations.css` - Complete animation library with accessibility support
273- `utils-cn.ts` - Utility function for class name merging
274
275## Tips for Success
276
2771. **Start with a plan**: Review design principles before making changes
2782. **Choose one palette**: Stick to a single color scheme for consistency
2793. **Test on real devices**: Emulators don't always show true responsive behavior
2804. **Keep it simple**: Modern design favors simplicity over complexity
2815. **Prioritize accessibility**: Design for all users from the start
2826. **Iterate based on feedback**: Show designs to users and refine
2837. **Maintain consistency**: Use the same patterns throughout your application
2848. **Performance matters**: Keep animations smooth (60fps) and optimize images
285
286## Common Use Cases
287
288### Enhancing an Existing App
2891. Select a color palette and implement it
2902. Replace basic buttons/inputs with enhanced components
2913. Add subtle animations to improve feedback
2924. Review and improve spacing consistency
2935. Ensure responsive behavior across devices
294
295### Building a Landing Page
2961. Use hero section layout as the focal point
2972. Add feature grid to showcase key features
2983. Implement consistent button styles for CTAs
2994. Add staggered animations for visual interest
3005. Test responsiveness thoroughly
301
302### Creating a Dashboard
3031. Use card components for data sections
3042. Implement consistent spacing and hierarchy
3053. Choose a professional color palette
3064. Add skeleton loaders for data fetching
3075. Ensure touch-friendly controls on mobile
308
309### Redesigning Forms
3101. Replace inputs with enhanced input components
3112. Add clear error and validation states
3123. Ensure proper label associations
3134. Implement loading states for submission
3145. Test keyboard navigation flow