Dokumentation

StartFast Pro

StartFast Pro ist ein Premium, produktionsreifes Next.js 15 Boilerplate mit Authentifizierung, Zahlungen, Teams, i18n, Analytik, Blog und einem sauberen UI-System — alles vorkonfiguriert.

Diese Dokumentation hilft Ihnen, schnell zu starten und StartFast Pro für Ihr SaaS-Produkt anzupassen.

Was Sie erhalten

  • Next.js 15 App Router mit React 19 und Server-Komponenten
  • Authentifizierung mit Better Auth (E-Mail, Google, GitHub OAuth)
  • PostgreSQL-Datenbank mit Drizzle ORM
  • Stripe-Zahlungen mit Abonnements und Webhooks
  • E-Mail-Versand über Resend
  • Internationalisierung mit next-intl (7 Sprachen)
  • Teams & RBAC mit Organisationen, Rollen und Berechtigungen
  • Analytik mit PostHog-Integration
  • Blog-System mit Markdown, SEO und Lesezeit
  • Admin-Dashboard für Benutzer, Bestellungen, Analytik und Inhalte
  • E2E-Tests mit Playwright
  • TypeScript End-to-End-Typsicherheit

Schnellstart

1Repository klonen
git clone https://github.com/Harries/startfast-pro.git my-saas
2Abhängigkeiten installieren
cd my-saas && npm install
3Umgebung konfigurieren
cp .env.example .env.local
4Datenbank einrichten
npm run db:push
5Entwicklung starten
npm run dev

http://localhost:3000 öffnen

Umgebungsvariablen

Kopieren Sie .env.example nach .env.local und konfigurieren Sie:

# App
NEXT_PUBLIC_APP_URL=http://localhost:3000
NEXT_PUBLIC_APP_NAME=StartFast Pro

# Database (Postgres)
DATABASE_URL=postgresql://username:password@localhost:5432/startfast_pro

# Authentication (Better-Auth)
BETTER_AUTH_SECRET=your-secret-key-at-least-32-characters
BETTER_AUTH_URL=http://localhost:3000

# Email (Resend)
RESEND_API_KEY=re_xxxxx
EMAIL_FROM=onboarding@yourdomain.com

# Stripe
STRIPE_SECRET_KEY=sk_test_xxxxx
STRIPE_WEBHOOK_SECRET=whsec_xxxxx
NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY=pk_test_xxxxx

# Optional: Google OAuth
GOOGLE_CLIENT_ID=
GOOGLE_CLIENT_SECRET=

# Optional: GitHub OAuth
GITHUB_CLIENT_ID=
GITHUB_CLIENT_SECRET=

# Analytics (PostHog)
NEXT_PUBLIC_POSTHOG_KEY=
NEXT_PUBLIC_POSTHOG_HOST=https://app.posthog.com

# Default Locale
NEXT_PUBLIC_DEFAULT_LOCALE=en

Datenbank-Setup

StartFast Pro verwendet PostgreSQL mit Drizzle ORM. Wir empfehlen Neon für serverlose PostgreSQL.

  1. 1.PostgreSQL-Datenbank erstellen (lokal oder Neon)
  2. 2.DATABASE_URL in Ihrer .env.local setzen
  3. 3.npm run db:push ausführen, um das Schema in die Datenbank zu pushen
  4. 4.npm run db:studio verwenden, um Daten mit Drizzle Studio anzuzeigen/bearbeiten
  5. 5.npm run db:generate verwenden, um Migrationen zu generieren

Schema: Das Datenbankschema wird in src/db/schema.ts mit Drizzles TypeScript-First-Ansatz definiert. Der DB-Client wird aus src/db/index.ts exportiert.

Authentifizierung

StartFast Pro verwendet Better Auth mit Drizzle-Adapter für die Authentifizierung. Unterstützt E-Mail/Passwort und Social OAuth.

  1. 1.BETTER_AUTH_SECRET setzen (mindestens 32 Zeichen)
  2. 2.BETTER_AUTH_URL auf Ihre App-URL setzen
  3. 3.(Optional) Google OAuth konfigurieren: GOOGLE_CLIENT_ID und GOOGLE_CLIENT_SECRET
  4. 4.(Optional) GitHub OAuth konfigurieren: GITHUB_CLIENT_ID und GITHUB_CLIENT_SECRET

Tip: Auth-Konfiguration befindet sich in src/lib/auth.ts (Server) und src/lib/auth-client.ts (Client). Sitzungen laufen standardmäßig nach 7 Tagen ab.

Stripe-Zahlungen

StartFast Pro unterstützt Stripe-Abonnements mit Webhook-Verarbeitung.

  1. 1.API-Schlüssel aus Stripe Dashboard → API Keys holen
  2. 2.STRIPE_SECRET_KEY, NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY setzen
  3. 3.Webhook-Endpunkt unter https://your-domain.com/api/webhook/stripe erstellen
  4. 4.Webhook-Signaturgeheimnis in STRIPE_WEBHOOK_SECRET kopieren

Tip: Für lokale Tests verwenden Sie stripe listen --forward-to localhost:3000/api/webhook/stripe

E-Mail-Konfiguration

StartFast Pro verwendet Resend für Transaktions-E-Mails.

  1. 1.Resend-Konto erstellen
  2. 2.API-Schlüssel holen und RESEND_API_KEY setzen
  3. 3.EMAIL_FROM auf Ihre verifizierte Absenderadresse setzen
RESEND_API_KEY=re_xxxxx
EMAIL_FROM=onboarding@yourdomain.com

Internationalisierung

StartFast Pro enthält Mehrsprachunterstützung über next-intl mit 7 integrierten Sprachen.

  • Englisch (en)
  • Chinesisch (zh)
  • Japanisch (ja)
  • Koreanisch (ko)
  • Deutsch (de)
  • Französisch (fr)
  • Spanisch (es)

Übersetzungsdateien befinden sich in src/i18n/messages/. Standard-Locale einstellen mit:

NEXT_PUBLIC_DEFAULT_LOCALE=en

Analytik

StartFast Pro integriert sich mit PostHog für Produktanalytik. Vorkonfigurierte Event-Tracker für Anmeldungen, Abonnements, Team-Aktionen und mehr sind enthalten.

  1. 1.PostHog-Konto erstellen
  2. 2.NEXT_PUBLIC_POSTHOG_KEY und NEXT_PUBLIC_POSTHOG_HOST setzen

Tip: Analytik-Helfer befinden sich in src/lib/analytics.ts. Verwenden Sie analytics.signUp(), analytics.subscriptionStarted(), etc.

Teams & Rollen

StartFast Pro enthält ein vollständiges Organisations- und rollenbasiertes Zugriffskontrollsystem (RBAC).

Rollen

  • Eigentümer — Vollständiger Zugriff. Kann Eigentum übertragen.
  • Admin — Mitglieder, Einstellungen und die meisten Ressourcen verwalten.
  • Mitglied — Inhalte erstellen und bearbeiten. Eingeschränkter Zugriff auf Einstellungen.
  • Betrachter — Nur-Lese-Zugriff.

Tip: Berechtigungen werden in src/lib/permissions.ts definiert. Verwenden Sie hasPermission(role, permission) zur Zugriffsüberprüfung.

Deployment

In Minuten auf Vercel deployen:

  1. 1.Code auf GitHub pushen
  2. 2.Repo auf Vercel importieren
  3. 3.Alle Umgebungsvariablen hinzufügen
  4. 4.Deployen!

Important: Nach dem Deployment aktualisieren Sie Ihre Stripe-Webhook-URL auf Ihre Produktionsdomain.

Support

Brauchen Sie Hilfe? Kontaktieren Sie uns: