スキル一覧に戻る
artiefy

nextjs-development

by artiefy

2🍴 1📅 2026年1月23日
GitHubで見るManusで実行

SKILL.md


name: nextjs-development description: Specialized skill for developing with Next.js 16, including cache components, server actions, routing, and modern React patterns. Use when working on app router, server components, or Next.js specific features.

Next.js Development Skill

This skill provides specialized knowledge and patterns for developing with Next.js 16 in the Artiefy project.

When to Use This Skill

  • Implementing new routes or pages in the app router
  • Working with Server Components and Server Actions
  • Configuring cache components and data fetching
  • Handling layouts, error boundaries, and loading states
  • Optimizing performance with Next.js 16 features

Key Patterns and Conventions

App Router Structure

  • Use src/app/ for all routes
  • Role-based routing: /super-admin, /admin, /educadores, /estudiantes
  • Server Components by default, mark client components with 'use client'

Server Actions

  • Place in src/server/ directory
  • Use for form submissions and data mutations
  • Validate with Zod schemas

Data Fetching

  • Server Components: Direct database queries
  • Client Components: Use SWR for data fetching and caching
  • Follow Docs/doc-nextjs16/guia-swr-nextjs.md for SWR patterns

Cache Components

  • Use cacheComponents: false in next.config.mjs (current setting)
  • Implement manual caching with unstable_cache when needed
  • Reference Docs/doc-nextjs16/cache-components.md

Examples

Creating a New Route

// src/app/admin/new-page/page.tsx
export default function NewPage() {
  return (
    <div>
      <h1>New Admin Page</h1>
    </div>
  );
}

Server Action

// src/server/actions/createUser.ts
'use server';

import { z } from 'zod';
import { db } from '@/server/db';

const schema = z.object({
  name: z.string().min(1),
  email: z.string().email(),
});

export async function createUser(formData: FormData) {
  const data = schema.parse(Object.fromEntries(formData));
  await db.insert(users).values(data);
}

Client Component with SWR

'use client';
import useSWR from 'swr';

export function UserList({ initialData }) {
  const { data: users } = useSWR('/api/users', fetcher, {
    fallbackData: initialData,
  });

  return (
    <ul>
      {users.map((user) => (
        <li key={user.id}>{user.name}</li>
      ))}
    </ul>
  );
}

Resources

  • Next.js 16 Documentation
  • Project guides in Docs/doc-nextjs16/
  • ESLint config: eslint.config.mjs
  • TypeScript config: tsconfig.json

スコア

総合スコア

40/100

リポジトリの品質指標に基づく評価

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

0/10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

3ヶ月以内に更新がある

0/10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

0/5

レビュー

💬

レビュー機能は近日公開予定です