Stack of pancakes with cream and strawberries
2022 年 3 月 17 日

Remix Stacks

Kent C. Dodds
共同創辦人

當您建構一個網路應用程式時,除了您使用的網路框架以及所有相關工具(Remix 很樂意提供這些)之外,您通常還需要一個 CI/CD 管道、一個資料庫和一個託管平台。許多早期採用者都是不習慣部署應用程式和資料庫伺服器的前端開發人員。坦白說,即使是習慣部署的人,通常也不喜歡設定這些東西的過程。

當靈感乍現 🌩,您準備開始編寫新的驚人想法 🤯 時,您最不想要的就是繁瑣的設定過程,阻礙您的靈感和部署應用程式。而當這個想法被證明是個好想法時,沒有人想要將匆忙設定的環境部署到生產環境。

這就是為什麼我們很興奮地宣布發布 Remix Stacks:開始使用 Remix 應用程式並準備好部署的最簡單方式!🥞

Introducing stacks video

Stacks 實際上是兩個功能

  1. 來自 Remix 團隊的預先建置、可立即用於生產的範本
  2. 為您和您的公司建立自訂範本的能力

內建 Stacks

只需幾分鐘,我們就可以讓您的應用程式啟動並準備好部署,並連接 CI/CD 管道、透過 prisma 連接資料庫並具有基本資料模型,甚至還包含使用者驗證!它還設置了用於開發的工具,例如 TailwindTypeScriptPrettierESLintCypressMSWDockervitestTesting Library 等等!

隨著這次發布,我們很高興為您提供三個 stacks,未來還會有更多

  • The Blues Stack:部署到邊緣(分散式)環境,具有長期運行的 Node.js 伺服器和 PostgreSQL 資料庫。適用於服務數百萬使用者的大型且快速的生產級應用程式。
  • The Indie Stack:部署到長期運行的 Node.js 伺服器,並具有持久性的 SQLite 資料庫。旨在讓您快速啟動,並為原型和概念驗證提供較低的複雜性,之後可以輕鬆更新為 Blues stack。
  • The Grunge Stack:部署到執行 Node.js 的無伺服器函式,並使用 DynamoDB 進行持久化。適用於想要在 AWS 基礎架構上部署生產級應用程式,服務數百萬使用者的開發人員。

Desktop showing three websites

觀看我快速展示 在不到 2 分鐘內將 Indie Stack 部署到生產環境 的過程

或者,觀看相同的內容,但這次是 將 Grunge Stack 部署到 AWS

是的,它們是以音樂類型命名的 🎶🎸🎷🥁

對於所有這些 stacks,您只需執行正常的 npx create-remix@latest,然後從 CLI 中選擇它們。這將為您產生專案,然後只需開啟 README.md 即可開始執行!在所有情況下,您都會得到一個完整的應用程式,該應用程式已準備好在本地進行開發並透過自動化的 GitHub 操作部署到生產環境。它甚至支援您的 dev 分支的暫存環境!

我們甚至為您設置了測試獎盃的所有層級!TypeScript/Prettier/ESLint 處理測試的靜態部分,Vitest 處理單元測試部分,而 Cypress/Testing Library/MSW 則處理整合/E2E 部分!事實上,我們甚至有一個自訂的 cy.login() 命令,讓您可以快速開始編寫需要驗證的測試。並且已經有一個測試程式碼用於測試使用者註冊和驗證。以正確的方式開始,並充滿信心地編寫您的想法!

自訂 Stacks

我們知道許多大型公司的使用者已經擁有部署環境和偏好的資料庫。您也有自己的 prettier 和 ESLint 設定。因此,我們以這樣的方式建構此功能,您可以建立自己的 stacks。從我們的 stacks fork 或從頭開始建立它們。然後,您可以使用 Remix CLI 的 --template 標誌來產生一個基於您自己的範本的 Remix 專案!它甚至可以從私有的 GitHub 儲存庫、tarball 的 URL 等等運作。而且我們還可以讓您自訂初始化自動移除 TypeScript 給那些不需要額外幫助的人。

我們完全預期自訂 stacks 會被大量使用。我們認為大多數人將使用自訂 stacks,而不是我們為您建立的 stacks。隨意 fork 和修改任何您喜歡的內容。從 Remix Stacks 文件中了解更多關於建立自訂 stacks 的資訊。看看您在 製作自己的 Remix Stack 中可以多快建立一個自訂 stack

讓您的想像力自由發揮。我們認為這會很受歡迎。以下是一些您可以使用 --template 標誌的想法

  • 在開發您自己的 stack 時使用本機目錄。
  • 當與世界分享您的開源 stack 時使用 GitHub 儲存庫。
  • 當將您的 stack 發佈到 S3 以供您公司中的其他人使用時使用 Tarball URL。
  • 使用您的無頭 CMS 和 Remix 建構內容平台的入門範本。
  • 使用私有 GitHub 儲存庫,以您的公司元件庫開始一個 Remix 應用程式,並部署在您公司的基礎架構上。

這裡有無限的可能性可以幫助工程師快速解決他們自己的問題。

試試 Stacks!

在 Remix,我們堅決致力於改善您的網路應用程式的使用者體驗 (UX)。由於開發人員體驗 (DX) 和您的生產力是該 UX 的重要輸入,因此我們正在努力使其變得卓越。而且我們絕對沒有完成。

npx create-remix@latest

獲取有關最新 Remix 新聞的更新

成為第一個了解新 Remix 功能、社群活動和教學的人。