본문으로 건너뛰기
cccskills
무료GitHub에 공개

nextjs-server-components

Build efficient React applications using Next.js Server Components that render on the server, reducing client bundle size, improving performance, and enabling direct database access. Use when fetching data server-side, reducing JavaScript bundle size, accessing databases directly in components, implementing streaming with Suspense, creating layouts that only render once, optimizing Core Web Vitals, or building SEO-friendly applications with server-first architecture.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

설치 방법 보기

포함된 파일(1)

  • SKILL.md3.4 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Next.js Server Components - React Server Components Patterns

When to use this skill

  • Fetching data directly in Server Components
  • Reducing client-side JavaScript bundle size
  • Accessing databases directly without API routes
  • Implementing streaming rendering with Suspense
  • Creating layouts that render once and persist
  • Optimizing Largest Contentful Paint (LCP)
  • Building SEO-friendly server-rendered applications
  • Using server-only code (database queries, secrets)
  • Implementing server-side data transformations
  • Reducing Time to Interactive (TTI)
  • Building applications with zero client JS by default
  • Combining Server and Client Components effectively

When to use this skill

  • Building Next.js 13+ apps, optimizing component rendering, managing server/client boundaries.
  • When working on related tasks or features
  • During development that requires this expertise

Use when: Building Next.js 13+ apps, optimizing component rendering, managing server/client boundaries.

Key Concepts

Server Components (default in App Router):

  • Run only on server
  • Can directly access databases/APIs
  • Zero client JavaScript
  • Support async/await

Client Components ('use client'):

  • Interactive features
  • Browser APIs
  • React hooks (useState, useEffect, etc.)

Composition Pattern

// ✅ Server Component fetches data
// app/page.tsx
import { ClientComponent } from './ClientComponent';

export default async function Page() {
  const data = await fetchData(); // Server-side
  
  return (
    <div>
      <h1>Server Rendered: {data.title}</h1>
      <ClientComponent initialData={data} />
    </div>
  );
}

// ✅ Client Component handles interactivity
// app/ClientComponent.tsx
'use client';

export function ClientComponent({ initialData }) {
  const [count, setCount] = useState(0);
  
  return <button onClick={() => setCount(count + 1)}>{count}</button>;
}

Pass Server Components as Children

// ✅ Client Component with Server Component children
'use client';

export function ClientLayout({ children }: { children: React.ReactNode }) {
  const [isOpen, setIsOpen] = useState(false);
  
  return (
    <div>
      <button onClick={() => setIsOpen(!isOpen)}>Toggle</button>
      {isOpen && children}
    </div>
  );
}

// Usage - children can be Server Components!
<ClientLayout>
  <ServerDataComponent /> {/* Stays on server */}
</ClientLayout>

When to Use Client Components

Only use 'use client' when you need:

  • useState, useEffect, useContext
  • Browser APIs (localStorage, window)
  • Event handlers (onClick, onChange)
  • Custom hooks
  • Third-party libraries that use React hooks

Resources


Remember: Keep components server-side by default. Only add 'use client' when necessary for interactivity.

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Build accessible web applications following WCAG 2.1/2.2 guidelines with proper semantic HTML, ARIA attributes, keyboard navigation, screen reader support, and inclusive design. Use when implementing ARIA labels and roles, ensuring keyboard navigation, supporting screen readers, providing text alternatives for images, managing focus, creating accessible forms, building inclusive UI components, testing with accessibility tools, meeting WCAG compliance levels, or designing for users with disabilities.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

Fabric-Pro/fabric-oss32026년 10월 21일 업데이트

Guide for adding new OAuth-based integrations to Fabric. Use when implementing OAuth providers like Microsoft Teams, GitHub, Google Drive, Slack, or similar services that need OAuth 2.0 authentication for user data access.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

Fabric-Pro/fabric-oss32026년 10월 21일 업데이트

Design clean, scalable, and maintainable REST and GraphQL APIs following industry best practices. Use when designing public or internal APIs, planning endpoint structures, defining request/response contracts, establishing versioning strategies, implementing authentication patterns, designing data models, creating API documentation, ensuring consistent error handling, optimizing for performance, or establishing service contracts between microservices.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

Fabric-Pro/fabric-oss32026년 10월 21일 업데이트

Create professional, dark-themed architecture diagrams as standalone HTML files with SVG graphics. Use when the user asks for system architecture diagrams, infrastructure diagrams, cloud architecture visualizations, security diagrams, network topology diagrams, or any technical diagram showing system components and their relationships.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

Fabric-Pro/fabric-oss32026년 10월 21일 업데이트

Create interactive, self-contained artifacts like mini-apps, visualizations, calculators, and tools that can be embedded or used standalone. Use when building interactive calculators, creating data visualizations, making mini web apps, building embeddable widgets, creating interactive demos, making tools for specific tasks, or generating standalone HTML/JS applications.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

Fabric-Pro/fabric-oss32026년 10월 21일 업데이트

Set up something that runs on a schedule (a weekly report, a daily digest) as a scheduled workflow, change, pause or debug one, and build interactive pages (project artifacts and workspaces) that read live Fabric data. Use when the user asks for a recurring job, a status page, a dashboard or a page with buttons, or asks why one did not run.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

Fabric-Pro/fabric-oss32026년 10월 21일 업데이트

Fabric-Pro의 스킬 모두 보기

이 스킬의 문제 신고