standards-frontend

Frontend component and UI development standards for modern React/Next.js applications. Includes React 19 patterns, Tailwind CSS v4, Server Components, accessibility, and the Anthropic frontend-design aesthetic philosophy.

16 stars

Best use case

standards-frontend is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Frontend component and UI development standards for modern React/Next.js applications. Includes React 19 patterns, Tailwind CSS v4, Server Components, accessibility, and the Anthropic frontend-design aesthetic philosophy.

Teams using standards-frontend should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/standards-frontend/SKILL.md --create-dirs "https://raw.githubusercontent.com/diegosouzapw/awesome-omni-skill/main/skills/development/standards-frontend/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/standards-frontend/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How standards-frontend Compares

Feature / Agentstandards-frontendStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Frontend component and UI development standards for modern React/Next.js applications. Includes React 19 patterns, Tailwind CSS v4, Server Components, accessibility, and the Anthropic frontend-design aesthetic philosophy.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Frontend Standards

Standards for React/Next.js components, state management, styling, and UI patterns.

## When to Use

- Building UI components
- Implementing state management
- Adding styles or layouts
- Handling user interactions
- Creating Server Components or Server Actions

## Resources

| Resource | Use When |
|----------|----------|
| [component-patterns.md](resources/component-patterns.md) | React component architecture |
| [state-management.md](resources/state-management.md) | TanStack Query, Zustand, URL state |
| [styling.md](resources/styling.md) | Tailwind v4, CSS patterns |

## Quick Reference

### Server vs Client Components

```tsx
// ✅ Server Component (default) - No directive needed
export default async function ProductPage({ params }: { params: { id: string } }) {
  const product = await getProduct(params.id);
  return <ProductDetails product={product} />;
}

// ✅ Client Component - Required for interactivity
'use client';

import { useState } from 'react';

export function AddToCartButton({ productId }: { productId: string }) {
  const [isAdding, setIsAdding] = useState(false);
  return (
    <button onClick={() => addToCart(productId)} disabled={isAdding}>
      {isAdding ? 'Adding...' : 'Add to Cart'}
    </button>
  );
}
```

### RSC Boundary Cheatsheet

| Feature | Server Component | Client Component |
|---------|-----------------|------------------|
| `async/await` | ✅ Yes | ❌ No |
| `useState`, `useEffect` | ❌ No | ✅ Yes |
| Browser APIs | ❌ No | ✅ Yes |
| Event handlers | ❌ No | ✅ Yes |
| Environment secrets | ✅ Yes | ❌ Never |

### Server Actions (React 19)

```tsx
// actions/cart.ts
'use server';

import { revalidatePath } from 'next/cache';
import { z } from 'zod';

const Schema = z.object({
  productId: z.string().uuid(),
  quantity: z.number().min(1).max(99),
});

export async function addToCart(formData: FormData) {
  const validated = Schema.parse({
    productId: formData.get('productId'),
    quantity: Number(formData.get('quantity')),
  });
  
  await db.cart.add(validated);
  revalidatePath('/cart');
  
  return { success: true };
}
```

### useActionState (React 19)

```tsx
'use client';

import { useActionState } from 'react';
import { useFormStatus } from 'react-dom';
import { createUser } from '@/actions/user';

function SubmitButton() {
  const { pending } = useFormStatus();
  return (
    <button type="submit" disabled={pending}>
      {pending ? 'Creating...' : 'Create User'}
    </button>
  );
}

export function CreateUserForm() {
  const [state, formAction] = useActionState(createUser, { error: null });
  
  return (
    <form action={formAction}>
      <input name="email" type="email" required />
      <SubmitButton />
      {state.error && <p className="text-red-500">{state.error}</p>}
    </form>
  );
}
```

### Component Structure with CVA

```tsx
import { cva, type VariantProps } from 'class-variance-authority';
import { cn } from '@/lib/utils';

const buttonVariants = cva(
  'inline-flex items-center justify-center rounded-md font-medium transition-colors',
  {
    variants: {
      variant: {
        default: 'bg-primary text-primary-foreground hover:bg-primary/90',
        destructive: 'bg-destructive text-destructive-foreground',
        outline: 'border border-input bg-background hover:bg-accent',
      },
      size: {
        default: 'h-10 px-4 py-2',
        sm: 'h-9 px-3',
        lg: 'h-11 px-8',
      },
    },
    defaultVariants: { variant: 'default', size: 'default' },
  }
);

interface ButtonProps
  extends React.ComponentProps<'button'>,
    VariantProps<typeof buttonVariants> {
  isLoading?: boolean;
}

export function Button({ className, variant, size, isLoading, children, ...props }: ButtonProps) {
  return (
    <button className={cn(buttonVariants({ variant, size }), className)} {...props}>
      {isLoading ? <Spinner /> : children}
    </button>
  );
}
```

### TanStack Query

```tsx
import { useQuery, useMutation, useQueryClient } from '@tanstack/react-query';

export function useUser(userId: string) {
  return useQuery({
    queryKey: ['user', userId],
    queryFn: () => fetchUser(userId),
    staleTime: 5 * 60 * 1000,
  });
}

export function useUpdateUser() {
  const queryClient = useQueryClient();
  
  return useMutation({
    mutationFn: updateUser,
    onSuccess: (data) => {
      queryClient.invalidateQueries({ queryKey: ['user', data.id] });
    },
  });
}
```

### Tailwind v4

```css
/* app/globals.css */
@import "tailwindcss";

@theme {
  --color-primary: oklch(0.7 0.15 250);
  --font-sans: "Geist", system-ui, sans-serif;
}
```

## Design Philosophy

1. **Bold Aesthetic Direction**: Commit to a clear visual identity
2. **Typography First**: Use distinctive, memorable fonts
3. **Intentional Color**: Dominant colors with sharp accents
4. **Purposeful Animation**: High-impact moments over micro-interactions

```tsx
// ❌ AVOID: Generic AI aesthetics
// - Inter, Roboto, system fonts
// - Purple gradients on white

// ✅ PREFERRED: Distinctive choices
// - Unique fonts (GT Walsheim, Fraunces)
// - Bold color palettes
```

## Amp Tools to Use

- `finder` - Find existing component patterns
- `Read` - Check component library conventions
- `mcp__exa__get_code_context_exa` - Research latest React/Next.js patterns

## Related Skills

- `standards-global` - TypeScript conventions
- `standards-backend` - API integration patterns
- `standards-testing` - Component testing

Related Skills

standards-typescript

16
from diegosouzapw/awesome-omni-skill

This skill provides TypeScript coding standards and is automatically loaded for TypeScript projects. It includes naming conventions, best practices, and recommended tooling.

standards-python

16
from diegosouzapw/awesome-omni-skill

This skill provides Python coding standards and is automatically loaded for Python projects. It includes naming conventions, best practices, and recommended tooling.

specialist-desenvolvimento-frontend

16
from diegosouzapw/awesome-omni-skill

Especialista em desenvolvimento frontend com componentes, pages e hooks alinhados com design e API.

software-frontend

16
from diegosouzapw/awesome-omni-skill

Production-grade frontend development with Next.js 16 App Router, TypeScript 5.9+ strict mode, Tailwind CSS v4, shadcn/ui, React 19.2 Server Components, state management (Zustand/Recoil), performance optimization (Turbopack stable, ISR/SSR/SSG), and accessibility best practices. Includes TanStack Query for server-state, Vitest for testing, and modern React patterns.

senior-frontend

16
from diegosouzapw/awesome-omni-skill

Expert frontend development with React, Vue, and modern frameworks including component architecture, state management, performance optimization, and accessibility.

senior-frontend-expert

16
from diegosouzapw/awesome-omni-skill

Use when developing frontend features, building components, optimizing performance, implementing UI/UX designs, managing state, reviewing frontend code, or working with React, Next.js, TypeScript, TailwindCSS, or CSS. Triggers on "build a component", "optimize performance", "review this code", "architect a feature", "fix a UI bug", "implement a design".

senior-frontend-developer-mindset

16
from diegosouzapw/awesome-omni-skill

Sets the mindset for a senior frontend developer concerning code quality, maintainability, and testing. This encourages developers to focus on creating clean, efficient, and well-tested code.

security-environment-standards

16
from diegosouzapw/awesome-omni-skill

Security and environment configuration standards for web applications, including environment variable management, secure coding practices, and production deployment security. Use when setting up environments, configuring security, or deploying applications.

sarvam-style-frontend

16
from diegosouzapw/awesome-omni-skill

Build high-confidence, India-first AI product sites with a clean, assertive, enterprise aesthetic using React + Framer Motion.

react-frontend

16
from diegosouzapw/awesome-omni-skill

React components for Chat, Evaluation, Report, Admin with TypeScript, Tailwind, hooks

React Frontend Architecture

16
from diegosouzapw/awesome-omni-skill

Comprehensive guidelines and standards for building scalable React applications, including project structure, component design, state management, and styling.

nextjs-frontend-guidelines

16
from diegosouzapw/awesome-omni-skill

Next.js 15 frontend development guidelines for YGS (영영사) React 19/TypeScript application. Modern patterns including App Router, Server/Client Components, shadcn/ui components, Tailwind CSS 4, multi-method authentication (Firebase/Kakao/JWT), admin dashboard patterns, and Korean localization. Use when creating components, pages, API routes, fetching data, styling, or working with frontend code.