Zacznij od jasnych wymagań
Im bardziej szczegółowe są Twoje początkowe wymagania, tym lepszy będzie początkowy plan Claude. Uwzględnij ograniczenia techniczne, wymagania wydajności i cele deploymentu.
Rozpoczęcie nowego projektu tradycyjnie wymaga godzin konfiguracji boilerplate: tworzenia struktur katalogów, konfigurowania narzędzi budowania, ustawiania lintingu, inicjalizacji git, pisania początkowej dokumentacji i ustanawiania konwencji projektowych. Claude Code przekształca ten wielogodzinny proces w przewodnik konwersacyjny, który produkuje fundament projektu gotowy do produkcji w ciągu minut.
Każdy developer zna tarcie związane z rozpoczynaniem od zera. Masz pomysł lub wymaganie, ale między tą wizją a pisaniem właściwego kodu funkcjonalnego leży labirynt zadań konfiguracyjnych. Czy powinieneś użyć TypeScript czy JavaScript? Jak powinieneś ustrukturyzować katalogi? Który framework testowy najlepiej pasuje? A co z lintingiem, formatowaniem, konfiguracją deploymentu?
Claude Code nie tylko generuje boilerplate - działa jako doświadczony architekt, który rozumie Twoje wymagania i podejmuje przemyślane decyzje dotyczące struktury projektu, narzędzi i konwencji.
Przed rozpoczęciem upewnij się, że masz:
npm install -g @anthropic-ai/claude-code
)Utwórz katalog projektu i przejdź do niego
mkdir my-awesome-projectcd my-awesome-projectclaude
Zainicjalizuj z kontekstem projektu
> /init
To tworzy początkowy plik CLAUDE.md. Claude przeanalizuje wszelkie istniejące pliki i wygeneruje odpowiednią dokumentację kontekstową.
Opisz swoją wizję projektu
> Muszę zbudować API do zarządzania zadaniami z następującymi wymaganiami:> - RESTful API z uwierzytelnianiem użytkowników> - Baza danych PostgreSQL> - Powiadomienia e-mail dla przypisań zadań> - Panel administratora do monitorowania> - Powinno być zbudowane z Node.js i TypeScript> - Potrzebuję wsparcia Docker dla deploymentu
Pozwól Claude utworzyć kompleksowy plan
> Na podstawie tych wymagań, pomyśl głęboko o najlepszej architekturze> i utwórz szczegółowy plan implementacji. Uwzględnij wybory technologiczne,> strukturę katalogów i kluczowe kroki implementacji.
Przejrzyj i doprecyzuj plan Claude przedstawi szczegółowy plan. Przejrzyj go i poproś o korekty:
> Użyjmy Fastify zamiast Express dla lepszej wydajności.> Dodaj też Redis do buforowania i zarządzania sesjami.
Wykonaj konfigurację projektu
> Świetny plan! Teraz zaimplementujmy strukturę projektu i początkową konfigurację.> Zacznij od utworzenia wszystkich katalogów, plików konfiguracyjnych i package.json.
Skonfiguruj środowisko rozwojowe
> Skonfiguruj środowisko rozwojowe obejmujące:> - Konfigurację TypeScript> - ESLint i Prettier> - Git hooks z Husky> - Początkową konfigurację Docker> - Strukturę zmiennych środowiskowych
Utwórz początkową implementację
> Teraz zaimplementuj podstawową konfigurację serwera z:> - Endpointem health check> - Podstawową obsługą błędów> - Połączeniem z bazą danych> - Konfiguracją logowania
Dodaj fundament testowy
> Skonfiguruj framework testowy z:> - Konfiguracją Jest dla TypeScript> - Przykładowymi testami jednostkowymi i integracyjnymi> - Konfiguracją testowej bazy danych> - GitHub Actions dla CI
Dokumentuj i commituj
> Utwórz kompleksowy README z:> - Przeglądem projektu> - Instrukcjami konfiguracji> - Strukturą dokumentacji API> - Workflow rozwojowym> Następnie utwórz początkowy commit git z opisowym komunikatem
> Potrzebuję starter Next.js SaaS z:> - Uwierzytelnianiem (NextAuth z Google/GitHub)> - Integracją Stripe dla subskrypcji> - PostgreSQL z Prisma ORM> - Tailwind CSS z komponentami shadcn/ui> - Wysyłaniem e-maili z Resend> - Stronami landing page, dashboard i settings> Przemyśl architekturę i zaimplementuj krok po kroku
## Plan architektury SaaS Starter
### Stack technologiczny- **Frontend**: Next.js 14 (App Router), React 18, TypeScript- **Stylowanie**: Tailwind CSS, komponenty shadcn/ui- **Auth**: NextAuth.js z providerami Google/GitHub- **Baza danych**: PostgreSQL z Prisma ORM- **Płatności**: Stripe (subskrypcje, webhooks)- **E-mail**: Resend dla e-maili transakcyjnych- **Deployment**: Konfiguracja gotowa na Vercel
### Struktura katalogów
├── app/ │ ├── (auth)/ │ │ ├── login/ │ │ └── register/ │ ├── (dashboard)/ │ │ ├── dashboard/ │ │ ├── settings/ │ │ └── billing/ │ ├── (marketing)/ │ │ ├── page.tsx │ │ ├── pricing/ │ │ └── about/ │ ├── api/ │ │ ├── auth/ │ │ ├── stripe/ │ │ └── trpc/ │ └── layout.tsx ├── components/ │ ├── ui/ # komponenty shadcn/ui │ ├── dashboard/ │ └── marketing/ ├── lib/ │ ├── auth.ts │ ├── stripe.ts │ ├── email.ts │ └── db.ts ├── prisma/ │ └── schema.prisma └── …pliki konfiguracyjne
### Kroki implementacji1. Zainicjalizuj Next.js z TypeScript2. Skonfiguruj Tailwind i shadcn/ui3. Skonfiguruj Prisma i schemat bazy danych4. Zaimplementuj NextAuth z providerami5. Utwórz integrację Stripe6. Zbuduj layouty stron i komponenty7. Dodaj funkcjonalność e-mail8. Skonfiguruj zmienne środowiskowe9. Utwórz skrypty rozwojowe10. Dodaj dokumentację
> Utwórz mikroserwis Python FastAPI do przetwarzania obrazów:> - Akceptuj przesyłanie obrazów> - Zmieniaj rozmiar obrazów na wiele rozmiarów> - Przechowuj w pamięci masowej kompatybilnej z S3> - PostgreSQL dla metadanych> - Redis do kolejki zadań> - Gotowy na Docker z odpowiednią strukturą> Użyj nowoczesnego Python z typami i async wszędzie
# Claude tworzy main.pyfrom fastapi import FastAPI, UploadFile, BackgroundTasksfrom fastapi.responses import JSONResponseimport asynciofrom contextlib import asynccontextmanager
from app.config import settingsfrom app.database import init_dbfrom app.redis import init_redisfrom app.routers import images, health
@asynccontextmanagerasync def lifespan(app: FastAPI): # Startup await init_db() await init_redis() yield # Shutdown # Cleanup connections
app = FastAPI( title="Image Processing Service", version="1.0.0", lifespan=lifespan)
app.include_router(health.router, tags=["health"])app.include_router(images.router, prefix="/api/v1", tags=["images"])
# Claude tworzy również:# - Dockerfile z multi-stage build# - docker-compose.yml dla lokalnego rozwoju# - Pełną strukturę projektu z odpowiednią separacją# - Implementację async klienta S3# - Kolejkę zadań Redis z ponawianiem# - Kompleksową obsługę błędów
> Zbuduj API Elixir Phoenix dla platformy analityki czasu rzeczywistego:> - GraphQL API z Absinthe> - Subskrypcje w czasie rzeczywistym> - TimescaleDB dla danych szeregów czasowych> - Uwierzytelnianie z Guardian> - Rate limiting per klucz API> - Metryki Prometheus> Przestrzegaj najlepszych praktyk OTP i odpowiednio używaj kontekstów
defmodule AnalyticsWeb.Schema do use Absinthe.Schema import_types AnalyticsWeb.Schema.MetricTypes
query do field :metrics, list_of(:metric) do arg :start_time, non_null(:datetime) arg :end_time, non_null(:datetime) arg :aggregation, :aggregation_type
middleware AnalyticsWeb.Middleware.Authenticate middleware AnalyticsWeb.Middleware.RateLimit resolve &Resolvers.Metric.list_metrics/3 end end
subscription do field :metric_updates, :metric do arg :metric_names, list_of(:string)
config fn args, %{context: context} -> {:ok, topic: "metrics:#{context.current_user.id}"} end end endend
# Plus pełne moduły kontekstowe, GenSerwery do przetwarzania w czasie rzeczywistym,# integracja Prometheus i kompleksowy zestaw testów
> Potrzebuję konfiguracji monorepo dla naszej aplikacji full-stack:> - Frontend: aplikacja Next.js> - Backend: API Node.js> - Shared: typy TypeScript i narzędzia> - Mobile: aplikacja React Native> - Użyj workspaces pnpm> - Skonfiguruj orkiestrację budowania> Pomyśl o strukturze i zaimplementuj ją
Claude utworzy wyrafinowaną strukturę monorepo z:
> Zaprojektuj architekturę mikroserwisów dla platformy e-commerce:> - API Gateway (Kong lub custom)> - User Service (uwierzytelnianie)> - Product Service (katalog)> - Order Service (transakcje)> - Notification Service (e-mail/SMS)> - Użyj Docker Compose dla lokalnego rozwoju> - Uwzględnij service discovery i health checks
Claude projektuje komunikację między serwisami, wspólne biblioteki i orkiestrację.
> Utwórz narzędzie CLI do migracji baz danych:> - Wsparcie dla wielu typów baz danych> - Kontrola wersji dla migracji> - Możliwość rollback> - TypeScript z Commander.js> - Dystrybucja przez npm> - Uwzględnij strony man i autouzupełnianie shell
Zacznij od jasnych wymagań
Im bardziej szczegółowe są Twoje początkowe wymagania, tym lepszy będzie początkowy plan Claude. Uwzględnij ograniczenia techniczne, wymagania wydajności i cele deploymentu.
Iteruj nad planem
Nie akceptuj pierwszego planu na ślepo. Poproś Claude o wyjaśnienie kompromisów, zasugerowanie alternatyw lub zagłębienie się w konkretne decyzje architektoniczne.
Wykorzystuj wiedzę Claude
Claude zna najnowsze najlepsze praktyki, zagadnienia bezpieczeństwa i typowe pułapki. Poproś go o przejrzenie własnych sugestii pod kątem potencjalnych problemów.
Dostosuj CLAUDE.md wcześnie
Gdy tylko struktura projektu istnieje, dostosuj plik CLAUDE.md z konwencjami specyficznymi dla projektu, czyniąc przyszły rozwój płynniejszym.
Gdy już masz udaną konfigurację projektu, utwórz niestandardowe polecenie slash:
Utwórz nowy projekt API TypeScript z naszą standardową konfiguracją:- Fastify z TypeScript- Nasza standardowa struktura folderów- PostgreSQL z naszą konfiguracją migracji- Nasze konfiguracje ESLint i Prettier- Standardowe GitHub Actions- Nasza konfiguracja logowania i monitorowania
Nazwa projektu: $ARGUMENTS
Utwórz kolekcję wzorców specyficznych dla projektu:
> # zapamiętaj nasze standardowe middleware obsługi błędów:> - Globalny handler błędów z odpowiednim logowaniem> - Strukturyzowane odpowiedzi błędów> - Śledzenie ID korelacji> - Integracja Sentry dla produkcji
Dobrze zainicjalizowany projekt powinien mieć:
Rozpoczynanie nowych projektów z Claude Code fundamentalnie zmienia doświadczenie rozwoju. Zamiast spędzać godziny na konfiguracji, angażujesz się w wysokopoziomową dyskusję architektoniczną ze sztuczną inteligencją, która przekłada Twoje wymagania na działający fundament projektu. Kluczem jest myślenie o Claude nie jako o generatorze kodu, ale jako o doświadczonym developerze, który może pomóc Ci podejmować przemyślane decyzje i implementować je konsekwentnie.
Pamiętaj: celem nie jest, aby Claude robił wszystko automatycznie, ale współpraca przy tworzeniu solidnego fundamentu, który przyspiesza rozwój właściwych funkcji. Każda minuta zaoszczędzona na boilerplate to minuta, którą możesz spędzić na tym, co czyni Twój projekt wyjątkowym.