
Enterprise SaaS入門套件
開源Next.js SaaS樣板用於企業SaaS應用程序開發。
如果您希望我們繼續開發和改進SaaS入門套件,請出演回購! ?
其他資源
視頻 - BoxyHQ的SaaS入門套件:您的終極企業兼容樣板
博客 - 企業就緒SaaS入門套件
Next.js的SaaS入門套件可以通過在每種產品中使用相同的所有功能開始,從而為您節省了幾個月的開發,因此您可以專注於使您的應用程序與眾不同的內容。
建立
- Next.js這是一個React框架,提供了諸如服務器端渲染和靜態站點生成之類的功能。它用於構建應用程序的用戶界面。可以在Next.Config.js中找到Next.js的主要配置。
- Tailwind CSS這是一種實用第一的CSS框架,用於快速構建自定義用戶界面。它用於設計應用程序。可以在Postcss.config.js中找到尾風CSS的配置。
- Postgres這是一個功能強大的開源對象關係數據庫系統。它用於存儲應用程序數據。與Postgres的聯繫很可能是通過Prisma來管理的。
- React這是用於構建用戶界面的JavaScript庫。它用於創建應用程序的交互元素。反應組件位於組件目錄中。
- Prisma這是一個開源數據庫工具包。它用於對象相關映射,這簡化了編寫數據庫查詢的過程。 Prisma配置和模式可以在Prisma目錄中找到。
- Typescript這是一個鍵入JavaScript的超集,該javaScript編譯為普通的JavaScript。它用於使代碼更強大和可維護。 TypeScript定義和配置可以在Next-Env.d.ts和I18Next.D.TS等文件中找到。
- Saml Jackson(提供SAML SSO,Directory Sync)這是處理SAML SSO(單登錄)的服務。它用於允許用戶登錄幾個相關係統中的任何一個ID和密碼IE(使用一組憑據)。 Saml Jackson的實現主要位於與身份驗證相關的文件中。
- SVIX(提供Webhook編排)這是處理Webhooks的服務。它用於發出有關用戶/團隊CRUD操作的事件,然後可以被應用程序或外部服務的其他部分捕獲和處理。 SVIX的集成分佈在整個代碼庫中,主要是在執行,讀取,更新和刪除(CRUD)操作的領域。
- 追溯(提供審核日誌服務)這是用於審核日誌記錄和數據可見性的服務。它有助於跟踪應用程序中的用戶活動IE(誰在應用程序中做了什麼以及何時完成)。回溯的使用將分散在整個代碼庫中,可能是在執行重要操作的文件中。
- 條紋(提供付款)這是處理付款的服務。它用於處理應用程序的付款。條紋的集成可能在與計費和訂閱相關的文件中發現。
- 劇作家(提供E2E測試)這是用於自動瀏覽器的Node.js庫。它用於在應用程序上運行端到端測試。劇作家的配置和測試可以在測試目錄中找到。
- Docker(提供Docker Compose)這是一個用於開發,運輸和運行應用程序的平台。它用於容器化應用程序及其依賴項。可以在Dockerfile和Docker-Compose.yml中找到Docker配置。
- NextAuth.js(提供身份驗證)這是Next.js應用程序的完整開源身份驗證解決方案。它用於處理用戶身份驗證和授權。可以在頁面/api/auth/[... nextauth] .ts文件中找到NextAuth.js配置和提供商。
部署
入門
請按照以下簡單步驟進行本地副本,並運行。
先決條件
- node.js(版本:> = 18.x)
- Postgresql
- NPM
- Docker組成
發展
1。設定
git clone https://github.com/ < your_github_username > /saas-starter-kit.git
2。轉到項目文件夾
3。安裝依賴項
4。設置您的.env文件
重複.env.example至.env 。
5。創建數據庫(可選)
為了使安裝依賴項的過程更加容易,我們提供帶有Postgres容器的docker-compose.yml 。
6。設置數據庫模式
7。啟動服務器
在開發環境中:
8。開始Prisma Studio
Prisma Studio是數據庫中數據的視覺編輯器。
9。測試
我們正在使用劇作家執行E2E測試。在/tests文件夾中添加所有測試。
更新playwright.config.ts以更改劇作家配置。
安裝劇作依賴性
npm run playwright:update
運行E2E測試
注意:HTML測試報告是在report文件夾中生成的。目前支持測試執行chromium和firefox瀏覽器
包裝盒的完全可定制的樣板,請參見下面的圖像? ? ?

?特徵
- 創建賬戶
- 使用電子郵件和密碼登錄
- 用魔術鏈接登錄
- 與SAML SSO登錄
- 與Google登錄[設置Google Oauth]
- 使用GitHub登錄[創建GitHub Oauth應用程序]
- 目錄同步(SICIM)
- 更新帳戶
- 創建團隊
- 刪除團隊
- 邀請用戶加入團隊
- 管理團隊成員
- 更新團隊設置
- Webhooks&Events
- 國際化
- 審核日誌
- 角色和權限
- 黑暗模式
- 電子郵件通知
- E2E測試
- Docker組成
- Prisma Studio
- 更新會員角色
- 目錄同步事件
- 頭像上傳
- SAML SSO
- 審核日誌
- Webhook
- 付款
- 安全標頭
➡️即將到來
貢獻
感謝您抽出寶貴的時間貢獻!貢獻使開源社區成為學習,啟發和創造的絕佳場所。您所做的任何貢獻都非常感謝。
請嘗試創建一個錯誤報告:
- 可再現。包括複製問題的步驟。
- 具體的。包括盡可能多的細節:哪個版本,哪個環境等。
- 獨特的。不要復制現有的打開問題。
- 示為一個錯誤。每個報告一個錯誤。
貢獻指南
?社區
- DISCORD(與開源社區和BoxyHQ團隊進行實時討論)
- Twitter / LinkedIn(關注我們)
- YouTube(觀看社區活動和教程)
- GitHub問題(貢獻,報告問題和產品思想)
?貢獻者
用貢獻製成。
?許可證
Apache 2.0許可證