邮箱密码登录、邮件一次性验证码免密码登录、Google 与 GitHub OAuth、WebAuthn 通行密钥、TOTP 双因素与备用码
verifiedstack-lite — Next.js SaaS模板
作者 verifiedstack
MIT 许可的 Next.js SaaS 认证与组织启动器,包含邮箱密码、通行密钥、TOTP 双因素、OAuth、多租户组织与 RBAC,以及事务邮件和演示模式。
看看你的网站会是什么样
浏览真实页面截图,比较内容排版与手机效果。点击下方缩略图切换,放大查看整页细节。
全部页面与视图 2
截图用于了解视觉与布局,交互效果请以实际项目为准。
值得关注的模板亮点
从已有项目资料中,快速了解它的特点。
多租户组织,支持邀请、owner / admin / reviewer / member 角色、引导流程与成员管理
react-email 事务邮件模板,可接入 Resend、任意 SMTP 中继,开发环境输出到控制台
DEMO_MODE=1 提供公开沙箱:预置账户、一键登录、共享账户凭据冻结、外发邮件抑制、每晚重置
Next.js App Router 与 RSC、TypeScript strict、Postgres 与 Drizzle ORM、Tailwind 与 shadcn/ui、pnpm workspaces 的 monorepo 结构
模板详细介绍
VerifiedStack Lite 是 VerifiedStack 付费套件的开源基础层,采用 MIT 许可发布。它提供完整的认证与组织功能:邮箱密码登录并支持验证邮件、通过邮件一次性验证码实现免密码登录、Google 与 GitHub OAuth(仅在配置密钥后显示按钮)、WebAuthn 通行密钥、TOTP 双因素与备用码、Cloudflare Turnstile 机器人防护和速率限制。组织层支持多租户、邀请、基于角色的访问(owner / admin / reviewer / member)、引导流程与成员管理,会话在服务端将用户定位到其活跃组织。事务邮件使用 react-email 模板,可接入 Resend、任意 SMTP 中继,或在开发环境输出到控制台,应用在零邮件配置下也能运行。DEMO_MODE=1 可将部署变为公开沙箱,包含预置账户、一键登录、共享账户凭据冻结、外发邮件抑制和每晚重置。技术栈为 Next.js App Router 与 RSC、TypeScript strict、Postgres 与 Drizzle ORM、Tailwind 与 shadcn/ui、pnpm workspaces,以 monorepo 形式提供并划分 auth、db、email、config 等包边界。
限制方面:Lite 有意不包含身份验证(KYC)流水线、人工审核队列、仅追加审计日志、Stripe 计费、数据保留与 DSAR 导出、同意捕获等合规功能,这些属于付费的 VerifiedStack Core。仓库由私有 monorepo 经导出器生成,问题每周分类,功能范围刻意收紧。免费范围仅指该版本代码,演示图片、字体、图标等第三方素材需按各自许可核对,域名、托管、数据库、支付或 AI 等外部服务可能另外收费。
适合你的项目吗?
适用场景
- 需要为 Next.js 应用快速搭建包含通行密钥、双因素与 OAuth 的登录系统
- 构建多租户 SaaS 并需要组织、邀请与角色权限管理
- 在开发或演示环境使用零邮件配置的事务邮件与公开沙箱模式
- 在决定采用付费 KYC 套件前,先阅读并评估其认证与组织基础代码
适合人群
- 使用 Next.js 与 Postgres 构建 SaaS 的开发者
- 需要可读、可修改的 MIT 许可认证与组织启动代码的团队
- 希望先评估认证层再决定是否采用付费 KYC 套件的项目
上手与定制指南
结合仓库当前版本的说明,按下面的资料检查内容、配置与运行要求。
- 1
克隆仓库后复制 .env.example 为 .env,默认配置即可运行
- 2
使用 docker compose up 启动 Postgres、执行迁移并在 localhost:3000 运行应用;开发热重载使用 docker-compose.dev.yml 组合
- 3
可选运行 docker compose run --rm seed 生成一个组织与两个账户的演示数据
- 4
本地 Node 方式:pnpm install,将 DATABASE_URL 指向 Postgres,执行 pnpm db:migrate && pnpm dev
- 5
生产环境需设置 BETTER_AUTH_SECRET 与 APP_URL,启用 REQUIRE_EMAIL_VERIFICATION=1 并配置邮件传输,应用容器绑定 localhost,需在前置反向代理转发 x-real-ip 以免速率限制将所有流量视为同一客户端
授权与来源资料
使用条件与限制
免费使用 · 保留许可声明本次收录的是公开仓库中采用 MIT 许可的免费版本;免费范围为该版本代码,不代表外部服务或第三方素材免费。
使用时需要遵守
- 允许免费使用、修改、商用和分发该版本代码。
- 分发代码副本或实质性部分时,保留原作者版权声明和完整 MIT 许可声明。
- 代码按现状提供;担保与责任限制以原许可证及适用法律为准。
额外费用与待核对事项
- KYC 身份验证流水线、人工审核队列、仅追加审计日志、Stripe 计费、数据保留与 DSAR 导出、同意捕获等合规功能属于付费的 VerifiedStack Core,免费版 Lite 不包含这些功能。
- 免费版 Lite 的更新永久免费;付费版 Core 的更新仅含 12 个月,需续订。
- 使用 Google 与 GitHub OAuth 需自行配置相应的客户端密钥,未配置时登录按钮不显示。
- 生产部署需在应用容器前放置反向代理并转发 x-real-ip,否则速率限制会将所有流量视为同一客户端。
- 生产环境需启用 REQUIRE_EMAIL_VERIFICATION=1 并配置邮件传输(Resend、SMTP 等),否则无法完成邮箱验证。
- 仓库由私有 monorepo 经导出器生成,代码与付费版本的基础层保持一致;功能范围刻意收紧,超出认证、组织、邮件与演示模式的需求可能不被接受。
- 演示图片、字体、图标及其他第三方素材需按各自许可核对,不能仅凭代码的 MIT 许可判断。
- 域名、托管、数据库、支付或 AI 等外部服务可能另外收费。
查看原文依据
Permission is hereby granted, free of charge
许可证原文
The paid kit, **VerifiedStack Core**, is this codebase plus the identity-verification layer for teams shipping regulated products
README 原文
Updates | free forever | 12 months, renewable
README 原文
Google & GitHub OAuth (buttons appear only when keys are configured)
README 原文
Put a reverse proxy in front of the app container (it binds to localhost) and forward `x-real-ip`, or rate limiting will treat all traffic as one client.
README 原文
Turn on `REQUIRE_EMAIL_VERIFICATION=1` and configure an email transport.
README 原文
https://github.com/verifiedstack/verifiedstack-lite/blob/main/LICENSEhttps://github.com/verifiedstack/verifiedstack-lite/blob/main/README.mdThis repo is assembled from our private monorepo by an exporter, so the code here always matches a paid release's foundation.
README 原文
DeepSeek 根据仓库许可证和 README 整理 ·2026-10-03。结果仅覆盖已读取资料,依赖、图片、字体及后续条款变更以各自原文为准。
项目核对记录与介绍依据
模板资料
- 来源平台
- GitHub
- 资料与维护参考分
- 资料较完整 · 85 / 100
- 技术栈
- Next.js · React
- 网站类型
- SaaS · 启动器
这个分数如何计算
本站按许可资料(最高30分)、演示链接(12分)、预览图(10分)、Star数(15分)、记录的维护时间(15分)、描述完整度(8分)、功能记录(5分)和分类资料(5分)计算。它不是代码、安全或性能测试,也不是 Google 评分;有链接不代表已实测可用。
这个项目需要核对什么
- 记录的仓库更新时间
- 2026-07-20
- 截图检查日期
- 2026-10-03
已收录演示链接。请用你的内容与屏幕尺寸检查;有演示不代表表单、认证或支付已经可用。
目录记录的主要技术栈是 Next.js。请通过依赖清单和锁文件核对实际版本与托管要求。这些说明基于收录资料,不代表代码审计或部署实测。
查看具体选型方法 →介绍的制作与核对状态
介绍由 AI 辅助整理目录与仓库资料。仓库作者不等于这篇介绍的审核者。
已完成服务器许可规则与 AI 来源核对;未经过人工编辑审核。
查看当时使用的来源资料
SHA-256: 1fde6913763e26f260f6039a8714b70cd9302ccdb09374eea7125543ea62fb20
2026-10-03T07:22:59.226Z
来源文件 / 仓库<p align="center"> <img src="apps/web/public/logo.svg" alt="VerifiedStack" width="88" height="88" /> </p> <h1 align="center">VerifiedStack Lite</h1> <p align="center"> Production-grade auth & organizations starter for Next.js —<br /> passkeys, 2FA, OAuth, multi-tenant orgs with RBAC, transactional email. MIT. </p> <p align="center"> <a href="https://demo.verifiedstack.app">Live demo</a> · <a href="#quickstart">Quickstart</a> · <a href="#lite-vs-core">Lite vs Core</a> · <a href="https://verifiedstack.app/?ref=github&utm_source=github&utm_medium=lite-readme">Full kit</a> </p> <p align="center"> <img src=".github/verification-flow.gif" alt="A user completing identity verification, with the decision landing in the dashboard" width="820" /> </p> <p align="center"> <sub>The identity-verification flow from <a href="https://verifiedstack.app/?ref=github&utm_source=github&utm_medium=lite-readme">VerifiedStack Core</a> — running on the auth & organization foundation in this repo.</sub> </p> --- Lite is the open-source base of [VerifiedStack](https://verifiedstack.app/?ref=github&utm_source=github&utm_medium=lite-readme), the KYC-ready SaaS starter. It's the complete auth and organization layer the paid kit is built on — released whole, under MIT, because you should be able to read real code before trusting a starter with your sign-in flow. No crippled features, no login-to-download, no nag screens. What's here is finished. ## What's inside - **Authentication ([Better-Auth](https://better-auth.com))** — email/password with verification emails, **passwordless sign-in** via emailed one-time codes, Google & GitHub OAuth (buttons appear only when keys are configured), **passkeys** (WebAuthn), **TOTP two-factor** with backup codes, Cloudflare Turnstile bot protection, and rate limiting. - **Organizations** — multi-tenant orgs with invitations, role-based access (owner / admin / reviewer / member), an onboarding flow, and member management. Sessions land users in their active organization server-side. - **Transactional email** — react-email templates behind a pluggable transport: Resend, any SMTP relay, or console logging in development. The app runs with zero email configuration. - **Demo mode** — `DEMO_MODE=1` turns a deployment into a safe public sandbox: seeded accounts, one-click sign-in, frozen credentials on shared accounts, suppressed outbound email, nightly reset. It's exactly how [demo.verifiedstack.app](https://demo.verifiedstack.app) runs. - **Stack** — Next.js 16 (App Router, RSC), TypeScript strict, Postgres + Drizzle ORM, Tailwind + shadcn/ui, pnpm workspaces. Ships as a monorepo with clean package seams (`auth`, `db`, `email`, `config`). ## Quickstart Everything runs in Docker — no local Node required. ```bash git clone https://github.com/verifiedstack/verifiedstack-lite cd verifiedstack-lite cp .env.example .env # defaults work out of the box docker compose up # postgres → migrations → app on localhost:3000 ``` For development with hot reload: ```bash docker compose -f docker-compose.yml -f docker-compose.dev.yml up ``` Optional demo/dev data (one org, two accounts): ```bash docker compose run --rm seed ``` Prefer local Node? `pnpm install`, point `DATABASE_URL` at a Postgres, then `pnpm db:migrate && pnpm dev`. ## Going to production - Set a real `BETTER_AUTH_SECRET` (`openssl rand -base64 32`) and your public `APP_URL`. - Turn on `REQUIRE_EMAIL_VERIFICATION=1` and configure an email transport. - Put a reverse proxy in front of the app container (it binds to localhost) and forward `x-real-ip`, or rate limiting will treat all traffic as one client. - Vercel works too: import the repo, set the env vars, use a managed Postgres. ## Lite vs Core Lite is a complete auth starter — and deliberately not more. The paid kit, **VerifiedStack Core**, is this codebase plus the identity-verification layer for teams shipping regulated products: | | Lite (this repo) | [Core](https://verifiedstack.app/?ref=github&utm_source=github&utm_medium=lite-readme) | | --- | :-: | :-: | | Email/password, OAuth, passkeys, email codes, TOTP 2FA | ✅ | ✅ | | Organizations, invites, RBAC | ✅ | ✅ | | Transactional email (Resend / SMTP / console) | ✅ | ✅ | | Demo mode | ✅ | ✅ | | KYC pipeline — provider-agnostic, mock provider included, documents never touch your servers | — | ✅ | | Manual review queue, operable by a compliance analyst | — | ✅ | | Append-only audit trail | — | ✅ | | Stripe billing: tiers + metered per-verification usage | — | ✅ | | Data retention, DSAR export, consent capture | — | ✅ | | Updates | free forever | 12 months, renewable | ## Contributing & support This repo is assembled from our private monorepo by an exporter, so the code here always matches a paid release's foundation. Issues are welcome and triaged weekly. Bug-fix PRs are appreciated — they're applied upstream and ship here with the next release, so your commit may land rebased. Feature scope is deliberately tight: if it isn't auth, orgs, email, or demo mode, it probably belongs in [a discussion](https://github.com/verifiedstack/verifiedstack-lite/discussions) first. ## License [MIT](LICENSE) — use it for anything, including commercial products.
看看同类模板
对比同技术栈与用途的模板,找到更适合的视觉与内容结构。

ai-website-cloner-template
Clone any website with one command using AI coding agents
Next.js · 启动器

Next.js SaaS Starter
Next.js SaaS Starter 是 Next.js 官方维护的 SaaS 起点模板,定位介于学习资源和可直接部署的脚手架之间。
Next.js · SaaS

Next.js Commerce
Next.js Commerce 是 Vercel 团队维护的电商启动模板,基于 Next.js App Router 构建,采用服务端渲染、React Server Components、Server Actions …
Next.js · 电商

Next-js-Boilerplate
Next-js-Boilerplate 是一个面向 Next.js 16、Tailwind CSS 4 和 TypeScript 的启动器,核心定位是开发者体验优先。
Next.js · 启动器

tailwind-nextjs-starter-blog
tailwind-nextjs-starter-blog 是一个面向个人技术博客的 Next.js 与 Tailwind CSS 启动模板,其 v2 版本基于 App Router 与 React Server Comp…
Next.js · 博客

next-forge
Production-grade Turborepo template for Next.js apps.
Next.js · 启动器
