Smithery Logo
MCPsSkillsDocsPricing
Login
Smithery Logo

Accelerating the Agent Economy

Resources

DocumentationPrivacy PolicySystem Status

Company

PricingAboutBlog

Connect

© 2026 Smithery. All rights reserved.

    korallis

    nextjs-server-components

    korallis/nextjs-server-components
    Coding
    93

    About

    SKILL.md

    Install

    Install via Skills CLI

    or add to your agent
    • Claude Code
      Claude Code
    • Codex
      Codex
    • OpenClaw
      OpenClaw
    • Cursor
      Cursor
    • Amp
      Amp
    • GitHub Copilot
      GitHub Copilot
    • Gemini CLI
      Gemini CLI
    • Kilo Code
      Kilo Code
    • Junie
      Junie
    • Replit
      Replit
    • Windsurf
      Windsurf
    • Cline
      Cline
    • Continue
      Continue
    • OpenCode
      OpenCode
    • OpenHands
      OpenHands
    • Roo Code
      Roo Code
    • Augment
      Augment
    • Goose
      Goose
    • Trae
      Trae
    • Zencoder
      Zencoder
    • Antigravity
      Antigravity
    ├─
    ├─
    └─

    About

    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...

    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

    • Server Components
    • Client Components

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

    Recommended Servers
    Svelte
    Svelte
    InstantDB
    InstantDB
    Prisma
    Prisma
    Repository
    korallis/droidz
    Files