TypeScript + Next.js + Prisma/Drizzle を用いたSaaSサンプルレポジトリ【ボイラーテンプレート】
はじめに
ここでは TypeScript と Next.js、および ORM(Prisma や Drizzle)を使用したオープンソースのSaaS向けサンプル/ボイラープレートリポジトリを紹介します。以下の要件を満たしているものを中心にピックアップしています。
- 認証・認可機能
- Role-based access control (RBAC)
- ユーザー/組織(ワークスペース)のエンティティを持つ
- 1ユーザーが複数の組織に所属可能
各プロジェクトの機能比較
リポジトリ | 技術スタック | 認証・認可 | マルチテナント(組織/ワークスペース) | RBAC (ロールベースアクセス制御) | 特徴 |
---|---|---|---|---|---|
Nextacular | Next.js, TypeScript, Prisma, Tailwind CSS, Stripe | ✔︎ | ✔︎ Teams/Workspaces | ✔︎(チーム単位の管理が可能) | 課金決済、ドキュメントとデモ完備、MITライセンス |
BoxyHQ Enterprise SaaS Starter Kit | Next.js, TypeScript, Prisma, PostgreSQL | ✔︎ SAML SSO, etc. | ✔︎ チーム管理 | ✔︎ 詳細なロール管理 | エンタープライズ向け、監査ログ対応、Apache-2.0 |
Next14 SaaS Boilerplate (The SaaS Factory) | Next.js 14, TypeScript, Prisma, Clerk | ✔︎ Clerkによる管理 | ✔︎ Clerkの組織管理機能 | ✔︎ 組織ごとにロール設定可能 | フルスタック実装、最新Next.js、MITライセンス |
Open SaaS Boilerplate by ixartz | Next.js, TypeScript, Drizzle ORM, Tailwind CSS, Shadcn UI, Clerk | ✔︎ Clerk利用 | ✔︎ 複数組織対応 | ✔︎ 組み込みのRoles & Permissions機能 | i18n、MFA、テスト基盤完備、MITライセンス |
next-saas-rbac (carlos-hfc) | Next.js, TypeScript, Prisma | ✔︎ | ✔︎ ユーザーと組織モデル | ✔︎ Owner / Administrator / Member などの詳細RBAC | 実験的ながらRBAC付きマルチテナントの実装例 |
1. Nextacular (Next.js SaaS Starter Kit)
Nextacular は Next.js をベースにしたマルチテナントSaaSアプリ用スターターキットです。Next.js (TypeScript) + Prisma + Tailwind CSS + Stripe などモダンな技術を用い、認証や課金決済、チーム/ワークスペース(組織)によるマルチテナンシーなどの機能がパッケージされています。MITライセンスで公開されており、ドキュメントとデモも整備されています。
2. BoxyHQ Enterprise SaaS Starter Kit
BoxyHQ Enterprise SaaS Starter Kit はエンタープライズ向けの Next.js 製 SaaS ボイラープレートです。TypeScript + Next.js + Prisma + PostgreSQL の構成で、SAML SSO や監査ログといったエンタープライズ機能を備えています。マルチテナントのチーム(ワークスペース)管理が可能で、チーム作成・削除やユーザー招待、ロール管理等が実装されています。Apache-2.0ライセンスで公開されています。
3. Next14 SaaS Boilerplate (The SaaS Factory)
[Next14 SaaS Boilerplate][3] は The SaaS Factory による Next.js 14 用のフルスタックSaaSボイラープレートです。Next.js 14 (TypeScript) と Prisma を使用し、認証基盤に Clerk を統合。Clerk の組織管理(Organization)機能によりユーザーが複数ワークスペースを持ち、切り替えが可能です。組織ごとにロールを設定し、細かな RBAC を行えます。MITライセンスで公開されています。
4. Open SaaS Boilerplate by ixartz
SaaS-Boilerplate (ixartz) は Next.js (TypeScript) + Drizzle ORM + Tailwind CSS + Shadcn UI などを採用した無料のオープンソースSaaSボイラープレートです。認証には Clerk、ORM は Drizzle を使用。マルチテナンシー(チーム/組織の複数所属)とロールベースのアクセス制御が標準で組み込まれ、ユーザー認証や多要素認証(MFA)、i18n、テスト基盤なども備えています。MITライセンスで提供されています。
5. next-saas-rbac (carlos-hfc)
next-saas-rbac (carlos-hfc) は Next.js と Prisma で実装されたマルチテナントSaaSサンプルプロジェクトです。ユーザーと組織(Organization) 概念を持ち、ユーザーの組織作成や所属管理、招待、ロールの割り当てなどが行えます。Owner / Administrator / Member といったロールベースのアクセス制御 (RBAC) をサポートしており、組織単位でユーザーの操作権限を細かく管理できます。まだ星が少なく実験的ですが、RBAC付きマルチテナントの実装例として参考になります。
Discussion