Przesyłanie plików
Utwórz przesyłanie plików z Server Actions:- Obsługuj dane multipart form- Stream do S3/Cloudinary- Pokaż postęp przesyłania- Generuj miniatury- Aktualizuj bazę danych
Buduj gotowe do produkcji aplikacje Next.js z Cursor i Claude Code. Te wzorce obejmują App Router, Server Components, trasy API, strategie wdrożenia oraz najnowocześniejsze funkcje, które czynią Next.js głównym frameworkiem dla aplikacji React.
http://127.0.0.1:3845/sse
claude
w terminaluclaude mcp add figma --transport sse http://127.0.0.1:3845/sse
/init
aby utworzyć specyficzny dla Next.js CLAUDE.md{ "mcpServers": { "figma": { "type": "sse", "url": "http://127.0.0.1:3845/sse" } }}
# Zasady rozwoju Next.js
## Konwencje frameworka- Używaj App Router (katalog app/)- Server Components domyślnie- Client Components tylko w razie potrzeby ('use client')- Kolokuj komponenty z trasami- Używaj grup tras do organizacji
## Wytyczne wydajności- Implementuj streaming SSR- Używaj dynamicznych importów dla code splitting- Optymalizuj obrazy z next/image- Implementuj właściwe strategie cache'owania- Używaj Partial Prerendering gdzie możliwe
## Standardy TypeScript- Tryb strict włączony- Używaj właściwego wnioskowania typów- Unikaj typów any- Implementuj właściwe granice błędów
# PRD: Konwertuj projekty Figma na komponenty Next.js# Plan: Użyj Figma MCP dla Server/Client components
"Używając Figma MCP, wygeneruj komponenty Next.js z wybranego projektu:1. Określ czy powinien być komponentem Server czy Client2. Używaj konwencji App Router3. Stosuj komponenty shadcn/ui gdzie to możliwe4. Wyodrębnij tokeny projektowe dla motywu"
# Przykładowy przepływ pracy"Wybierz sekcję Hero w Figma i:- Wygeneruj jako Server Component (bez interakcji)- Używaj next/image dla zoptymalizowanych obrazów- Zastosuj responsywny design z Tailwind- Wyodrębnij tokeny kolorów i odstępów"
// Wyodrębnij tokeny Figma do motywu Next.js"Używając Figma MCP get_variable_defs:1. Pobierz wszystkie zmienne systemu projektowego2. Wygeneruj rozszerzenia tailwind.config.js3. Utwórz zmienne CSS dla dynamicznego motywu4. Skonfiguruj obsługę trybu ciemnego"
// Przykładowe wyjście: tailwind.config.jsexport default { theme: { extend: { colors: { primary: { DEFAULT: '#1D4ED8', // Figma: Primary/Blue dark: '#1E40AF', // Figma: Primary/Dark light: '#3B82F6' // Figma: Primary/Light } }, spacing: { 'section': '5rem', // Figma: Spacing/Section 'component': '2rem' // Figma: Spacing/Component } } }}
Zaawansowana struktura routingu:
Utwórz złożoną strukturę routingu:1. Strony marketingowe z grupą tras (marketing)2. Dashboard z grupą tras (dashboard) i layoutem3. Trasy API w app/api/4. Równoległe trasy dla modali5. Przechwytujące trasy dla galerii zdjęć6. Dynamiczne segmenty z [...slug]7. Implementuj właściwe loading.tsx i error.tsx
Utwórz komponenty serwera, które:- Pobierają dane bezpośrednio w komponentach- Używają React cache() do deduplikacji- Implementują streaming z Suspense- Obsługują błędy z granicami błędów- Używają generateStaticParams dla SSG- Implementują strategie rewalidacji
Zbuduj dashboard z Server Components:1. Layout z pobieraniem danych użytkownika2. Równoległe pobieranie danych dla widgetów3. Streaming poszczególnych komponentów4. Client components dla interakcji5. Optymistyczne aktualizacje z useOptimistic6. Server Actions dla mutacji
Implementuj kompletny system formularzy:1. Server Action do przesyłania formularzy2. Walidacja Zod na serwerze3. useFormState dla stanu klienta4. useFormStatus dla stanów pending5. Optymistyczne aktualizacje6. Obsługa błędów z useActionState7. Rewalidacja po mutacji
Przesyłanie plików
Utwórz przesyłanie plików z Server Actions:- Obsługuj dane multipart form- Stream do S3/Cloudinary- Pokaż postęp przesyłania- Generuj miniatury- Aktualizuj bazę danych
Aktualizacje w czasie rzeczywistym
Implementuj funkcje w czasie rzeczywistym:- Konfiguracja Server-Sent Events- Integracja WebSocket- Optymistyczne aktualizacje UI- Rozwiązywanie konfliktów- Wskaźniki obecności
Wzorzec RESTful API:
Utwórz kompletne REST API:1. Endpointy CRUD w app/api/resources/2. Middleware do uwierzytelniania3. Rate limiting z Upstash4. Dokumentacja OpenAPI5. Type-safe responses6. Middleware obsługi błędów7. Konfiguracja CORS
Skonfiguruj tRPC z App Router:1. Utwórz router tRPC2. Integracja App Router3. Type-safe wywołania API4. Integracja React Query5. Subskrypcje WebSocket6. Obsługa błędów7. Kontekst uwierzytelniania
Konfiguracja providerów
Skonfiguruj NextAuth z:- Wieloma providerami (Google, GitHub, Email)- Sesjami bazodanowymi z Prisma- Niestandardowymi stronami signin/signout- Kontrolą dostępu opartą na rolach- JWT z tokenami odświeżania
Ochrona middleware
Implementuj middleware auth:- Ochrona tras API- Logika przekierowań- Sprawdzanie ról- Walidacja sesji- Niestandardowe nagłówki
Skonfiguruj Prisma dla produkcji:1. Skonfiguruj pooling połączeń2. Implementuj soft deletes3. Dodaj pola audytu (createdAt, updatedAt)4. Utwórz skrypty seed5. Optymalizuj zapytania z include/select6. Implementuj transakcje7. Dodaj indeksy bazy danych
Utwórz warstwę dostępu do danych:- Wzorzec repozytorium dla modeli- Cache'owane zapytania z unstable_cache- Type-safe wywołania bazy danych- Pomocniki transakcji- Query builders- Strategie migracji
Optymalizuj obrazy statyczne:- Używaj next/image z sizing- Implementuj blur placeholders z Figma- Skonfiguruj domeny obrazów- Używaj responsywnych obrazów- Generowanie WebP- Integracja CDN
# Z Figma MCP:"Wyodrębnij obrazy z projektu Figma i:- Wygeneruj zoptymalizowane komponenty next/image- Utwórz blur data URLs- Ustaw właściwe proporcje width/height"
Obsługuj obrazy dynamiczne:- Optymalizacja na żądanie- Integracja Cloudinary- Generowanie awatarów- API transformacji obrazów- Strategie cache'owania
Analizuj i optymalizuj pakiety:1. Uruchom analizator pakietu2. Implementuj dynamiczne importy3. Optymalizuj skrypty stron trzecich4. Tree shake nieużywany kod5. Skonfiguruj minifikację SWC6. Implementuj chunking oparty na trasach7. Monitoruj z SpeedCurve
Napisz kompleksowe testy:1. Testy jednostkowe z Jest2. Testy komponentów z React Testing Library3. Testy integracji dla tras API4. Testy E2E z Playwright5. Regresja wizualna z Percy6. Testy wydajności7. Testy dostępności
Utwórz suite testów E2E:- Testuj krytyczne przepływy użytkownika- Testy integracji API- Przepływy uwierzytelniania- Procesy płatności- Scenariusze błędów- Responsywność mobilna- Benchmarki wydajności
Skonfiguruj dla Vercel:1. Zmienne środowiskowe2. Preview deployments3. Edge functions4. Integracja analytics5. Speed insights6. Niestandardowe domeny7. Konfiguracja ISR
Utwórz konfigurację Docker produkcyjną:- Multi-stage build- Standalone output- Health checks- Graceful shutdown- Environment injection- Security scanning- Konfiguracja Compose
Implementuj i18n:1. Skonfiguruj next-intl2. Lokale oparte na trasach3. Tłumaczenie treści4. Formatowanie daty/liczb5. SEO hreflang tags6. Przełącznik języka7. Generowanie statyczne per locale
Zbuduj aplikację multi-tenant:1. Detekcja subdomen2. Izolacja bazy danych3. Personalizacja motywu4. Feature flags5. Middleware specyficzne dla najemcy6. Integracja billing7. Portal administratora
Implementuj kompleksowe SEO:- Dynamiczne API metadanych- Strukturalne dane- Generowanie sitemap- robots.txt- Obrazy Open Graph- Karty Twitter- Schema markup
Skonfiguruj analytics:- Vercel Analytics- Google Analytics 4- Niestandardowe zdarzenia- Śledzenie konwersji- Śledzenie błędów z Sentry- Monitorowanie wydajności- Śledzenie zachowań użytkowników
Implementuj obsługę błędów:1. Globalna granica błędów2. error.tsx na poziomie tras3. Odpowiedzi błędów API4. Logowanie z winston5. Integracja Sentry6. Przyjazne dla użytkownika wiadomości7. Strategie odzyskiwania błędów
Skonfiguruj cache'owanie:- Konfiguracja segmentów tras- Rewalidacja na żądanie- Rewalidacja czasowa- Nagłówki cache- Cache'owanie CDN- Cache'owanie zapytań bazy danych- Integracja Redis
Migruj z Pages Router:1. Analizuj obecne trasy2. Konwertuj layouty3. Aktualizuj pobieranie danych4. Migruj trasy API5. Aktualizuj middleware6. Testuj dokładnie7. Strategia stopniowej migracji