Overview
A full-featured Next.js 16 SaaS starter with auth, payments, email, and AI wired in.
The Next.js template is a full-featured SaaS starter built on Next.js 16 and the App Router. It ships with authentication, a PostgreSQL database, payments, transactional email, internationalized content, and AI features already wired together so you can focus on your product instead of plumbing.
Auth, database, email, and content/i18n are integrated end to end. A few surfaces — the newsletter and parts of the dashboard — are working examples or UI starters you'll adapt to your product before launch. The feature status table below spells out each one.
Tech stack
| Concern | Library |
|---|---|
| Framework | Next.js 16 (App Router), React 19, React Compiler |
| Language | TypeScript |
| Auth | Better Auth (email/password + GitHub/Google OAuth, admin plugin) |
| Database | PostgreSQL + Drizzle ORM (node-postgres) |
| Payments | Creem SDK |
| Resend + React Email | |
| i18n | next-intl |
| Docs & blog | Fumadocs (MDX) |
| AI chat | Vercel AI SDK + OpenAI |
| AI media | Replicate (image / video / audio) |
| Styling | Tailwind CSS v4 + shadcn/ui (new-york) |
| Tooling | Biome (lint + format), pnpm |
Feature status
Throughout these docs, features are labelled consistently:
- Integrated — connected end to end in the template.
- Example — a working reference implementation that still needs product-specific policy, limits, or data.
- UI starter — a designed surface backed by mock/static data or unfinished actions.
| Area | Status | Scope |
|---|---|---|
| Authentication | Integrated | Email/password, verification, reset, GitHub/Google OAuth, sessions, admin plugin |
| Database | Integrated | PostgreSQL pool, Drizzle schema, auth and payment tables |
| Payments | Example | Creem checkout, query, signature verification, and selected webhook events |
| Email / contact | Integrated | Resend delivery for auth and contact messages |
| Newsletter | UI starter | Email template only; no subscription route or persistence |
| AI | Example | OpenAI chat streaming and Replicate media task flows |
| Content & i18n | Integrated | Fumadocs docs, blog/legal collections, English and Chinese routing |
| Dashboard / admin | UI starter | Several pages use static/mock data; admin API has a server-side role guard |
| Storage | Example | Authenticated image upload to local public/uploads; replace for hosted production |
Application surfaces
- Marketing — landing page, blog, legal, contact, and about pages under the
(marketing)route group. - Authentication — login, register, forgot/reset password under
(auth). - Dashboard — authenticated dashboard, settings, account, and admin pages
under
(dashboard). - Content — Fumadocs-powered docs (you are reading them now), blog, and legal collections.
- Payments — pricing CTAs, a Creem checkout flow, and payment/subscription tables.
- Email — verification, password reset, and contact delivery via Resend.
- AI — a streaming chat assistant plus image, video, and audio generation pages.
Start here
Follow this path for the fastest route from clone to a running, deployable app:
