透過超過 100 個訣竅的集合來學習 Nuxt!
發布·  

Nuxt:展望未來

過去一年,Nuxt 發生了很多事情。Sébastien 和 Daniel 分享了他們對我們所取得的成就以及接下來發展方向的想法。

2023 年回顧 - Sébastien

2023 年 1 月,Daniel 提出了Nuxt:2023 年的願景。我們實現了我們設定的大部分目標。有些目標尚未實現,我們將在今年處理它們!

這是一個豐收的一年,團隊發布了 9 個小版本:從 v3.1 到 v3.9。

在最初的 365 天裡,Nuxt 3 達到了新的里程碑

  • 在 GitHub 上獲得 49,5K 個星新增你的星 😊)
  • 在 npm 上 2700 萬次下載
  • nuxt 儲存庫 中有 612 位貢獻者
  • 142 位維護者創建的 184 個模組
  • 2,423 個已關閉的議題
  • 1,728 個已合併的拉取請求
  • Discord 上有 26,300 名成員

10 月底,Nuxt 3 的下載量超過了 Nuxt 2 的下載量 🚀。

同月,我們發布了Nuxt Image 1.0,支援 Nuxt 3 和新功能,以確保您的網站在使用圖片時保持效能。現在,只要您開始使用 <NuxtImg><NuxtPicture> 元件,Nuxt 就會自動安裝它。

我們發布了 Nuxt DevTools,提升了我們對 Web 框架的開發者體驗。我很高興看到我們啟發了其他框架採用類似的方法:Vue DevToolsNext DevToolsRemix DevToolsVite Plugin DevToolsAstro Dev Toolbar 等。

經過多個月在內部構建我們的 UI 函式庫後,Benjamin Canac 開源了 Nuxt UI,讓您可以使用 TailwindCSS 构建的高度客製化元件更快地創建網站。

Nuxt Content 發布了 10 個小版本,其中包含各種改進:從效能到 MDC 語法。我們正在進行一些工作,以便在未來更好地支援邊緣渲染。同時,NuxtLabs 團隊正在開發 Nuxt Studio,讓使用者可以使用類似 Notion 的編輯器編輯 Markdown 檔案,同時將內容保留在您的 git 儲存庫中。

展望 2024 年 - Daniel

我們已經進入 2024 年,此更新絕對是遲來的!

以下是我對未來一年 Nuxt 發展方向的一些想法。

持續開發和重新構想

我希望看到我們繼續調整我們的最佳實踐以適應不斷變化的生態系統需求,擴展良好 DX 的界限,並改進 Nuxt。

我對我們目前在 Nuxt 中提供的功能感到非常滿意。但我絕不想安於現狀。我們需要不斷追求隨著 Web 平台發展而出現的新可能性。我們致力於在未來遵守 基準相容性(並且參與了與 W3C WebDX 社群小組 的相關討論)。

我們有一些策略可以讓我們做到這一點,同時優先考慮現有使用者的穩定性,並認識到 Nuxt 生態系統的範圍。

  1. 一般而言,我們遵循 引入可停用的模組或實驗性功能 的模式進行測試,同時收集回饋並確認新功能的方向和 API。
  2. 我們採用了 ecosystem-ci 模式 來驗證我們在 Nuxt 中的程式碼變更不會無意中破壞下游專案。如果您維護一個依賴 Nuxt 的經過良好測試的模組或函式庫,我會歡迎 PR 將您的專案新增到 nuxt/ecosystem-ci
  3. 我們計劃發布一個 基於提取的測試,它將允許您設定您的 CI 以針對最新的 Nuxt 每晚版本進行自我測試,以便在升級時提供關於新 Nuxt 版本的早期回饋,而不是面臨問題。
  4. 最後,我們採用了 基於推送的方法來更新現有專案。當我們識別出可以推廣到生態系統的重大變更或改進時,我們將主動為 Nuxt 模組(以及在較小程度上,其他使用 Nuxt 的開源專案)提出 PR。

我希望這將使我們能夠繼續創新和實驗新功能,而不會犧牲穩定性和可維護性。

特別是,請注意以下方面的積極開發

永續開源

我希望 Nuxt 能夠長期保持獨立、社群驅動的框架。

我很高興看到基於 Nuxt 成功創立的公司,以及圍繞 Nuxt 出現的倡議,這些倡議成為贊助商或以其他方式回饋核心框架,從而實現持續的 Nuxt 開發。

顯然,NuxtLabs 是這方面的傑出典範。Pooya ParsaAnthony Fu 和我都能夠全職從事開源工作,這要歸功於他們圍繞 Nuxt 的付費服務:Nuxt UI ProNuxt 專家Nuxt StudioNuxtHub(即將推出)。他們還贊助來自 Vue、Vite、UnJS 和 Nuxt 的社群成員

對我來說,保持 Nuxt 在未來保持獨立和永續需要一個活躍且不斷成長的團隊和社群。在未來幾週內,我將與核心團隊一起宣布一個更廣泛的「Nuxt 團隊」。這是為了表彰許多人的不懈努力,他們的貢獻已經使 Nuxt 成為現在的樣子。

我也希望看到更多團隊成員或更廣泛的社群在未來幾年內獲得贊助,從事 Nuxt 生態系統的工作。如果您的公司從 Nuxt 中受益,請考慮贊助一些從事 Nuxt 開發的開發人員,無論他們是團隊成員還是更廣泛的社群成員。

友好的協作

從我們開始開發 Nuxt 3 時,我們就一直致力於提取我們從中受益的工具、函式庫甚至框架,以便它們也能夠讓更廣泛的受眾受益。

這當然是 UnJS 的起源,它在 Pooya Parsa 的領導下繼續蓬勃發展(他也是 Nuxt 核心團隊的關鍵成員)。

我們希望繼續保持友好的協作態度。雖然自己構建東西或將它們留給自己可能是「成功」,但我沒有時間玩零和遊戲。如果我們一起構建,我們將在框架和網路社群方面都走得更遠。

同樣地,我們的核心價值之一是平台獨立性(以及深入的平台整合)。我們支援跨部署、測試、故事、KV 和快取、資料庫、圖像 CDN 和字型主機的 90 多個供應商。生態系統的廣度帶來豐厚的回報,並讓人們可以根據供應商帶來的價值來選擇使用哪些供應商。但這意味著我們依賴於使用這些不同供應商的社群,來幫助我們保持這些整合的最新狀態。

Nuxt 不會消失,但我們希望我們協同完成的工作能夠比我們更長久。

一個歡迎的社群

儘管很容易關注技術卓越性或開發人員體驗的品質,但我更受鼓舞的是看到 Nuxt 生態系統作為一個熱情友好的社群不斷成長。

我非常感謝在我們的社群 DiscordTwitterGitHub 上普遍存在的友善語氣。

Nuxt 4 怎麼樣?

JavaScript 領域以每週產生一個新框架而聞名,這意味著存在一個自然炒作週期。

但我們並不是以炒作為目標來繼續開發 Nuxt,這也是我們致力於定期發布週期的部分原因

  • 每年發布 主要 框架版本
  • 每月左右發布 次要 版本
  • 每週左右發布 修補 版本

您可以預期在主要版本中會發布重大變更,在次要版本中會發布新功能。這意味著我們不會將功能保留到 Nuxt 4;我們將在每 6 週的次要版本週期中盡可能定期發布這些功能。

我們的目標是讓 Nuxt 4 有機會進行深思熟慮的重大變更,並提供簡單的遷移路徑(最好是使用自動化流程)或選擇加入先前行為的能力。

我們團隊確實從 Nuxt 2 到 3 的過渡中吸取了教訓,我認為 Nuxt 4 是我們證明主要版本可以為使用者帶來良好體驗的機會。

您可以瀏覽 我們的路線圖 或查看 我們已標記為 v4 的問題 來預覽我們考慮的變更。和往常一樣,我們非常歡迎回饋和願望!

時間表

我們 Nuxt 4 的路線圖有點複雜,因為我們還計劃在整個 UnJS 生態系統中發布主要版本。

粗略來說,我們的目標是在開始 一系列跨 UnJS 軟體包生態系統的主要版本之前,為 Nuxt v3 和 Nitro v2 發布一個次要版本 - 最終達到 Nuxt v4。

我們的目標是在6 月 14 日或之前發布 Nuxt v4(當然,這取決於在 Nitro 主要版本發布後是否有足夠的時間在社群中進行適當的測試,所以請注意這不是確切的日期)。

持續支援

在 Nuxt v4 發布後,我們將為 Nuxt v3 提供六個月的持續支援和錯誤修復,我們預期這足以讓大家升級到 v4,因為我們的目標是提供平穩的升級路徑。

我們希望您和我們一樣對 Nuxt v4 的即將發布感到興奮!🎉


最後,非常感謝大家在我們建構 Nuxt 的過程中給予的所有信任和支持。我相信我代表整個團隊發言,能夠與 Nuxt 社群的每個人一起做這件事是一種榮幸!❤️

Daniel (代表整個 Nuxt 團隊)