Automatically discover frontend development skills when working with React, Next.js, UI components, state management, data fetching, forms, accessibility, performance optimization, or SEO. Activates for frontend web development tasks.
Install via CLI
openskills install rand/cc-polymath---
name: discover-frontend
description: Automatically discover frontend development skills when working with React, Next.js, UI components, state management, data fetching, forms, accessibility, performance optimization, or SEO. Activates for frontend web development tasks.
---
# Frontend Skills Discovery
Provides automatic access to comprehensive frontend development skills.
## When This Skill Activates
This skill auto-activates when you're working with:
- React component development
- Next.js applications and App Router
- State management (Context, Zustand, Redux)
- Data fetching (SWR, React Query, Server Actions)
- Form handling and validation
- Web accessibility (WCAG, ARIA)
- Frontend performance optimization
- SEO and metadata
- UI/UX design implementation
## Available Skills
### Quick Reference
The Frontend category contains 10 core skills (+ elegant-design):
1. **react-component-patterns** - Component design, composition, hooks, performance
2. **nextjs-app-router** - Next.js 14+ App Router, Server Components, routing
3. **react-state-management** - Context, Zustand, Redux Toolkit patterns
4. **react-data-fetching** - SWR, React Query, Server Actions, data patterns
5. **react-form-handling** - React Hook Form, Zod validation, form patterns
6. **web-accessibility** - WCAG 2.1 AA compliance, ARIA, keyboard navigation
7. **frontend-performance** - Bundle optimization, Core Web Vitals, code splitting
8. **nextjs-seo** - SEO with Next.js, metadata API, structured data
9. **web-workers** - Web Workers API, message passing, offloading computation
10. **browser-concurrency** - Service Workers, SharedWorkers, Worklets, PWAs
11. **elegant-design/SKILL.md** - World-class accessible interfaces (separate Agent Skill)
### Load Full Category Details
For complete descriptions and workflows:
```bash
cat ~/.claude/skills/frontend/INDEX.md
```
This loads the full Frontend category index with:
- Detailed skill descriptions
- Usage triggers for each skill
- Common workflow combinations
- Cross-references to related skills
### Load Specific Skills
Load individual skills as needed:
```bash
# Core React patterns
cat ~/.claude/skills/frontend/react-component-patterns.md
cat ~/.claude/skills/frontend/react-state-management.md
cat ~/.claude/skills/frontend/react-data-fetching.md
# Next.js specific
cat ~/.claude/skills/frontend/nextjs-app-router.md
cat ~/.claude/skills/frontend/nextjs-seo.md
# Forms and validation
cat ~/.claude/skills/frontend/react-form-handling.md
# Quality and performance
cat ~/.claude/skills/frontend/web-accessibility.md
cat ~/.claude/skills/frontend/frontend-performance.md
# Concurrency and workers
cat ~/.claude/skills/frontend/web-workers.md
cat ~/.claude/skills/frontend/browser-concurrency.md
# Design system and UI (Agent Skill - auto-discovered separately)
# elegant-design/SKILL.md activates independently for UI design work
```
## Common Workflows
### New Next.js Application
**Sequence**: App Router → Components → Data Fetching
```bash
cat ~/.claude/skills/frontend/nextjs-app-router.md # Setup routing, layouts
cat ~/.claude/skills/frontend/react-component-patterns.md # Build components
cat ~/.claude/skills/frontend/react-data-fetching.md # Fetch data
```
### Elegant UI Design
**Sequence**: Design System → Components → Accessibility
```bash
# Note: elegant-design auto-activates as separate Agent Skill
# for design-focused work (shadcn/ui, accessible interfaces, etc.)
cat ~/.claude/skills/frontend/react-component-patterns.md
cat ~/.claude/skills/frontend/web-accessibility.md
```
### Form Implementation
**Sequence**: Form Handling → State Management
```bash
cat ~/.claude/skills/frontend/react-form-handling.md # Build forms
cat ~/.claude/skills/frontend/react-state-management.md # Manage form state
```
### Production Optimization
**Sequence**: Performance → Accessibility → SEO
```bash
cat ~/.claude/skills/frontend/frontend-performance.md # Optimize bundle
cat ~/.claude/skills/frontend/web-accessibility.md # Ensure accessibility
cat ~/.claude/skills/frontend/nextjs-seo.md # Optimize SEO
```
### CPU-Intensive Features & PWAs
**Sequence**: Workers → Concurrency → Performance
```bash
cat ~/.claude/skills/frontend/web-workers.md # Offload heavy computation
cat ~/.claude/skills/frontend/browser-concurrency.md # Service Workers, offline support
cat ~/.claude/skills/frontend/frontend-performance.md # Optimize overall performance
```
## Skill Selection Guide
**React Component Patterns** → `react-component-patterns.md`:
- Component architecture and composition
- Custom hooks
- Performance optimization (memo, useMemo, useCallback)
- Design patterns (compound components, render props, HOCs)
**Next.js App Router** → `nextjs-app-router.md`:
- Server Components vs Client Components
- Routing and layouts
- Data fetching patterns
- Streaming and Suspense
- Route handlers and API routes
**State Management** → `react-state-management.md`:
- When to use Context vs external state libraries
- Zustand for simple global state
- Redux Toolkit for complex state
- Server state vs client state
**Data Fetching** → `react-data-fetching.md`:
- SWR for client-side fetching
- React Query (TanStack Query) for advanced patterns
- Next.js Server Actions
- Data mutation patterns
- Caching strategies
**Forms** → `react-form-handling.md`:
- React Hook Form for performance
- Zod for validation
- Form state management
- Error handling
- File uploads
**Accessibility** → `web-accessibility.md`:
- WCAG 2.1 AA compliance
- ARIA attributes
- Keyboard navigation
- Screen reader support
- Color contrast and focus management
**Performance** → `frontend-performance.md`:
- Bundle size optimization
- Code splitting and lazy loading
- Core Web Vitals
- Image optimization
- Font optimization
- Runtime performance
**SEO** → `nextjs-seo.md`:
- Next.js Metadata API
- Open Graph and Twitter cards
- Structured data (JSON-LD)
- Sitemap and robots.txt
- Dynamic metadata
**Web Workers** → `web-workers.md`:
- Offloading heavy computation
- Web Workers API and message passing
- Transferable objects for zero-copy
- React integration with custom hooks
- Worker pools for parallel processing
- TypeScript type safety
**Browser Concurrency** → `browser-concurrency.md`:
- Service Workers for offline support and PWAs
- SharedWorkers for cross-tab state
- Audio/Paint/Animation Worklets
- Background sync and push notifications
- Caching strategies
- BroadcastChannel for cross-tab messaging
## Integration with Other Skills
Frontend skills commonly combine with:
**API skills** (`discover-api`):
- Consuming REST APIs
- GraphQL client integration
- API error handling in UI
- Authentication flows
**Testing skills** (`discover-testing`):
- Component testing
- E2E testing with Playwright
- Visual regression testing
- Accessibility testing
**Design** (`elegant-design` Agent Skill):
- shadcn/ui components
- Accessible design patterns
- Chat/terminal/code UIs
- Streaming interfaces
- Design systems
**Database skills** (`discover-database`):
- Server Actions with database queries
- ORM integration in Server Components
- Real-time data updates
**Deployment skills** (`discover-deployment`):
- Vercel deployment
- Netlify deployment
- Performance monitoring
- CDN configuration
## Progressive Loading
This gateway skill enables progressive loading:
- **Level 1**: Gateway loads automatically (you're here now)
- **Level 2**: Load category INDEX.md (~4K tokens) for full overview
- **Level 3**: Load specific skills (~3-4K tokens each) as needed
Total context: 2K + 4K + skill(s) = 6-12K tokens vs 25K+ for entire index.
## Quick Start Examples
**"Build a Next.js app with App Router"**:
```bash
cat ~/.claude/skills/frontend/nextjs-app-router.md
```
**"Create reusable React components"**:
```bash
cat ~/.claude/skills/frontend/react-component-patterns.md
```
**"Implement global state management"**:
```bash
cat ~/.claude/skills/frontend/react-state-management.md
```
**"Build a form with validation"**:
```bash
cat ~/.claude/skills/frontend/react-form-handling.md
```
**"Optimize my app performance"**:
```bash
cat ~/.claude/skills/frontend/frontend-performance.md
```
**"Make my app accessible"**:
```bash
cat ~/.claude/skills/frontend/web-accessibility.md
```
**"Improve SEO"**:
```bash
cat ~/.claude/skills/frontend/nextjs-seo.md
```
**"Offload heavy computation"**:
```bash
cat ~/.claude/skills/frontend/web-workers.md
```
**"Build a PWA with offline support"**:
```bash
cat ~/.claude/skills/frontend/browser-concurrency.md
```
## React vs Next.js Decision
**Use React (Vite)** when:
- Building SPAs or client-heavy apps
- Don't need SSR or SSG
- Want full control over routing
- Building component libraries
**Use Next.js** when:
- Need SEO (Server-Side Rendering)
- Want file-based routing
- Need API routes
- Building full-stack apps
- Want optimal performance out of the box
## State Management Decision
**Use Component State (useState)** when:
- State is local to a component
- Simple state that doesn't need sharing
**Use Context** when:
- Sharing state across a few components
- Theme, auth, or user preferences
- Not frequently updated
**Use Zustand** when:
- Need global state
- Want simple API
- State updates are moderate
**Use Redux Toolkit** when:
- Complex state logic
- Need middleware (sagas, thunks)
- Large team with established patterns
- Time-travel debugging needed
For detailed guidance:
```bash
cat ~/.claude/skills/frontend/react-state-management.md
```
## Data Fetching Decision
**Server Components** (Next.js App Router):
- Default choice for Next.js 14+
- Fetch on server, zero client JS
- Direct database access
**Server Actions** (Next.js):
- For mutations and form handling
- Progressive enhancement
- Type-safe with TypeScript
**SWR**:
- Client-side data fetching
- Built-in caching
- Optimistic updates
- Focus on user experience
**React Query**:
- Advanced caching strategies
- Complex data dependencies
- Offline support
- DevTools for debugging
For detailed patterns:
```bash
cat ~/.claude/skills/frontend/react-data-fetching.md
```
## Usage Instructions
1. **Auto-activation**: This skill loads automatically when Claude Code detects frontend work
2. **Browse skills**: Run `cat ~/.claude/skills/frontend/INDEX.md` for full category overview
3. **Load specific skills**: Use bash commands above to load individual skills
4. **Follow workflows**: Use recommended sequences for common patterns
5. **elegant-design**: Note that elegant-design is a separate Agent Skill that auto-activates for UI design work
---
**Next Steps**: Run `cat ~/.claude/skills/frontend/INDEX.md` to see full category details, or load specific skills using the bash commands above.
No comments yet. Be the first to comment!