Use when adding new error messages to React, or seeing "unknown error code" warnings.
npx skills add locle97/agent-skills --skill "neo-brutalism-frontend"
Install specific skill from multi-skill repository
# Description
Build production-ready Neo-brutalism UI components for React/Next.js applications following the Duckeebs design system. Use when building: (1) Hero sections, cards, buttons, badges, or other UI components with bold borders and offset shadows, (2) Gallery or grid layouts with hover effects, (3) Interactive elements requiring the neo-brutalism aesthetic (thick borders, hard shadows, vibrant colors, tactical hover interactions), (4) Any frontend work for the Duckeebs platform that needs to match the GMK Flare mockup design patterns.
# SKILL.md
name: neo-brutalism-frontend
description: "Build production-ready Neo-brutalism UI components for React/Next.js applications following the Duckeebs design system. Use when building: (1) Hero sections, cards, buttons, badges, or other UI components with bold borders and offset shadows, (2) Gallery or grid layouts with hover effects, (3) Interactive elements requiring the neo-brutalism aesthetic (thick borders, hard shadows, vibrant colors, tactical hover interactions), (4) Any frontend work for the Duckeebs platform that needs to match the GMK Flare mockup design patterns."
Neo-brutalism Frontend Builder
Build production-ready Neo-brutalism components for React/Next.js following the Duckeebs design system extracted from the GMK Flare mockup.
Quick Start
- Review the request - Identify component type (button, card, hero, gallery, etc.) and requirements
- Check component patterns - See
references/component-patterns.mdfor exact implementation examples - Follow the workflow - See
references/implementation-guide.mdfor step-by-step process - Apply the Trinity - Every interactive element gets: border, shadow, and hover effect
The Neo-brutalism Trinity
Always apply to interactive elements (buttons, cards, links):
className="
border-{2-5} border-black // Bold border
shadow-[4px_4px_0px_0px_rgba(0,0,0,1)] // Offset shadow
hover:translate-x-[-4px] hover:translate-y-[-4px] // Hover lift
transition-all duration-150 // Smooth transition
"
Core Design Tokens
Shadows (offset, no blur):
- Small: shadow-[4px_4px_0px_0px_rgba(0,0,0,1)]
- Medium: shadow-[6px_6px_0px_0px_rgba(0,0,0,1)]
- Large: shadow-[10px_10px_0px_0px_rgba(0,0,0,1)]
- Hover: shadow-[12px_12px_0px_0px_rgba(0,0,0,1)]
Colors (semantic):
- Primary CTA: bg-[#FF6B35] (keycap-orange)
- Secondary CTA: bg-[#3A7CA5] (keycap-blue)
- Success: bg-[#2D936C] or bg-[#4BA67C] (green)
- Warning: bg-[#F9C74F] (duck-yellow)
- Error: bg-[#E63946] (error-red)
- Background: bg-[#F5C518] (yellow) or bg-[#FFFEF0] (white)
- Text: text-black or text-[#FFFEF0]
Typography:
- Headings: font-[Archivo_Black] (bold, uppercase, tracking-tight)
- Body: font-[Space_Mono] (default, leading-relaxed)
- Labels: font-bold text-xs uppercase tracking-wide
Implementation Process
Step 1: Identify Component Type
Determine what you're building:
- Buttons/CTAs β See Button Patterns in component-patterns.md
- Cards/Panels β See Card Patterns in component-patterns.md
- Hero Sections β See Hero Section Pattern in component-patterns.md
- Galleries/Grids β See Gallery Grid Pattern in component-patterns.md
- Status Indicators β See Badge Patterns in component-patterns.md
- Complex Sections β Combine multiple patterns from component-patterns.md
Step 2: Start with Structure
Build semantic HTML/JSX first without styling:
function ProductCard({ title, image, status }) {
return (
<article>
<div>
<img src={image} alt={title} />
</div>
<header>
<h3>{title}</h3>
<span>{status}</span>
</header>
</article>
);
}
Step 3: Apply Neo-brutalism Styling
Add the core visual elements following patterns from component-patterns.md:
function ProductCard({ title, image, status }) {
return (
<article className="
bg-[#FFFEF0]
border-5 border-black
shadow-[10px_10px_0px_0px_rgba(0,0,0,1)]
p-6
cursor-pointer
transition-all duration-200
hover:translate-x-[-4px] hover:translate-y-[-4px]
">
{/* Content */}
</article>
);
}
Step 4: Add Interactions & Details
- Apply hover, active, and focus states
- Add floating badges or decorative elements if needed
- Include animations sparingly (see Animation patterns in
component-patterns.md) - Ensure responsive behavior (mobile-first approach)
Step 5: Verify Quality
Check against the component checklist from implementation-guide.md:
- Applied Trinity to interactive elements
- Used semantic colors
- Proper typography hierarchy
- Accessibility (ARIA, focus states, keyboard nav)
- Responsive on mobile/tablet/desktop
Reference Files
For specific component implementations:
β Read references/component-patterns.md
Contains exact code for:
- Button variants (primary, outline, icon)
- Badge variants (standard, floating, status)
- Card layouts (basic, hoverable, with header)
- Hero sections with grid layouts
- Gallery grids with hover effects
- Sentiment/progress bars
- Info rows and stat displays
- Background decorations
- Responsive patterns
For step-by-step workflow:
β Read references/implementation-guide.md
Contains:
- Detailed 10-step implementation process
- Common patterns (cards with badges, stats rows, section headers, image galleries)
- Component checklist
- Accessibility guidelines
- Performance considerations
- Common pitfalls to avoid
Quick Examples
Primary Button:
<button className="
px-6 py-3 bg-[#FF6B35] text-[#FFFEF0]
border-3 border-black
shadow-[4px_4px_0px_0px_rgba(0,0,0,1)]
hover:translate-x-[-2px] hover:translate-y-[-2px]
hover:shadow-[6px_6px_0px_0px_rgba(0,0,0,1)]
hover:bg-[#E63946]
transition-all duration-150
font-bold text-sm uppercase
">
Click Me
</button>
Feature Card:
<div className="
bg-[#FFFEF0]
border-5 border-black
shadow-[10px_10px_0px_0px_rgba(0,0,0,1)]
p-8
hover:translate-x-[-4px] hover:translate-y-[-4px]
transition-all duration-200
">
<h3 className="font-[Archivo_Black] text-2xl mb-4">{title}</h3>
<p className="text-base leading-relaxed">{description}</p>
</div>
Status Badge:
<span className="
px-4 py-2
bg-[#2D936C] text-white
border-3 border-black
font-bold text-xs uppercase
">
Live
</span>
Integration with Existing Codebase
When working on the Duckeebs client project:
- Reference the style guide - The project has
archieved/docs/style-guide.mdwith additional context - Use Shadcn components as base - Extend components from
components/ui/with Neo-brutalism classes - Follow existing patterns - Check
app/directory for existing component usage - Use path aliases - Import with
@ui/,@/lib/,@layouts/etc.
Best Practices
β
Do:
- Use hard-edged offset shadows (no blur)
- Apply thick borders (2-5px solid black)
- Implement hover translations (lift elements on hover)
- Use semantic colors from the design system
- Keep corners minimal (5px max radius)
- Test on mobile, tablet, desktop
- Ensure WCAG AA contrast
β Don't:
- Use blurred shadows or glows
- Skip borders on interactive elements
- Use arbitrary Tailwind colors (e.g., bg-blue-500)
- Round corners too much
- Animate everything without purpose
- Forget hover states
- Make touch targets smaller than 44px
Workflow Summary
For every component:
1. Identify component type β Check component-patterns.md for reference
2. Build structure β Semantic HTML/JSX
3. Apply styling β Border + Shadow + Colors
4. Add interactions β Hover + Active + Focus states
5. Verify quality β Checklist from implementation-guide.md
Most important: Every interactive element MUST have the Trinity (border, shadow, hover).
# Supported AI Coding Agents
This skill is compatible with the SKILL.md standard and works with all major AI coding agents:
Learn more about the SKILL.md standard and how to use these skills with your preferred AI coding agent.