Der Starter für dein nächstes SaaS

Auth, Organisationen, Abrechnung und E-Mails — schon verdrahtet.

Alles, was jedes SaaS zweimal baut

Einmal sauber verdrahtet, damit du am Produkt arbeitest statt an der Grundausstattung.

Anmeldung mit Zwei-Faktor
E-Mail und Passwort über better-auth, Reset per Link, TOTP samt Backup-Codes. Sessions liegen in deiner Datenbank.
Organisationen und Rollen
Inhaber, Administrator, Mitglied — inklusive Einladungen per E-Mail. Berechtigungen und Limits prüft eine einzige Funktion.
Abrechnung über Stripe
Checkout, Kundenportal und Testphase. Das Abo hängt an der Organisation, nicht am Konto des Inhabers.
Transaktionale E-Mails
React Email als Vorlage, Resend als Versand. Die Templates liegen im Repo und lassen sich lokal im Browser ansehen.
Zweisprachig ab Zeile eins
Deutsch und Englisch über next-intl, Locale im Pfad. Eine weitere Sprache ist eine JSON-Datei und ein Eintrag.
Typsicher und getestet
TypeScript strict, Migrationen als lesbares SQL, Unit-Tests mit Vitest und zwei Playwright-Smoke-Tests.

In drei Schritten startklar

  1. 1

    Klonen und installieren

    Repository holen, pnpm install ausführen. Mehr braucht der erste Start nicht.

  2. 2

    Umgebung einrichten

    Die .env aus der Beispieldatei füllen, dann pnpm db:migrate und pnpm db:seed. Postgres genügt.

  3. 3

    Bauen und ausliefern

    pnpm dev zum Entwickeln, danach auf Vercel oder jede andere Node-Umgebung deployen.

Preise

Klein anfangen, später wechseln.

free
Kostenlos
  • 3 Projekte inklusive
Kostenlos starten
basic
pro Monat
  • 10 Projekte inklusive
Kostenlos starten
pro
pro Monat
  • 100 Projekte inklusive
  • 14 Tage kostenlos testen
Kostenlos starten
Alle Details zu den Plänen

Häufige Fragen

Welche Datenbank brauche ich?

Postgres. Der Zugriff läuft über Drizzle, die Verbindung ist eine einzige Umgebungsvariable — Neon, Supabase, RDS oder ein Container auf deinem Rechner.

Kann ich Stripe weglassen?

Ja. Ohne Price-ID in der Konfiguration bleibt der Plan-Katalog kostenlos und Stripe wird nie aufgerufen. Die Limits pro Plan greifen trotzdem.

Wem gehört der Code?

Dir. Es ist ein Repository, das du kopierst und änderst — keine Bibliothek, die zur Laufzeit bei uns nachfragt, und kein Konto, das ablaufen kann.

Wo kann ich das hosten?

Ausgelegt auf Vercel, läuft aber in jeder Node-Umgebung mit einer erreichbaren Postgres-Datenbank.

Wie füge ich eine Sprache hinzu?

Eine JSON-Datei unter messages anlegen und das Kürzel in der Routing-Konfiguration eintragen. Das Präfix in den Routen kommt automatisch.

Sind Impressum, Datenschutz und AGB enthalten?

Die Seiten sind da, die Texte nicht. Dort stehen Platzhalter — ohne eigene, geprüfte Rechtstexte solltest du nicht live gehen.

Fang beim Produkt an, nicht beim Login
Registrieren, Organisation anlegen, loslegen. Ohne Kreditkarte.