Introduction
Overview
This is a batteries-included SaaS starter kit built on Next.js 16 (App Router, React 19, TypeScript). It ships the parts every product needs — authentication, organizations, billing, file storage, email, an admin panel, and full internationalization — wired together and tested, so you can start on your actual product instead of the plumbing.
The kit is deliberately visually virgin: its own components render as
semantic HTML with zero styling, exposing data-slot hooks. You bring the
design system. See UI & styling for the three supported
ways to do that.
What's inside
- Authentication — email/password, magic links, email verification, TOTP two-factor, social login (Google/GitHub), and admin impersonation. Powered by Better Auth. See Authentication.
- Organizations — a configurable multi-tenancy model: personal workspaces, shared organizations, invitations, and roles. See Organizations.
- Billing — Stripe subscriptions with flat or per-seat plans, trials, and one-time credit packs. See Billing & plans and Credits.
- File storage — S3 or Cloudflare R2 behind a signed-URL abstraction, with avatar and logo uploads built in. See File storage.
- Email — provider-agnostic (Resend or SMTP) with React Email templates. See Email.
- Admin panel — user and organization management, audit logs, and runtime app config. See Admin panel.
- Internationalization — every page is localized (
en/esout of the box) with next-intl. See Internationalization.
How the docs work
This documentation section is itself a kit feature (see
docs/documentation-system.md in the repo). A few things worth knowing:
- Content is multilingual. Every page lives under
src/content/docs/<locale>/and is served in the reader's language. - Pages fall back to the default locale when a translation is missing, with a notice — so a page can ship in English and be translated later.
- A
meta.jsonper locale controls the sidebar order and section grouping.
Next steps
Head to Installation to get the app running locally, then Configuration to learn how feature flags work.