發表 Build Output API - Vercel

2022/08/12閱讀時間約 3 分鐘
我們相信 Web 是一個開放給所有人的平台, 因此我們努力讓 Vercel 能夠以不管選擇用甚麼建置都可以存取與使用.
今天我們引入了 Build Output API, 一個檔案系統為基底的規格, 允許任何框架都可以讓 Vercel 建置, 並且取用了 Vercel 的優勢, 也就是 Vercel 的 infrastructure building blocks, 像是 Edge Functions, Edge Middleware, Incremental Static Regeneration(ISR), Image Optimization 等等.
這個全新的規格也帶給 Vercel CLI 強大的能力, 包括:
  • vercel build : 本地建置一個專案或是在你自己的 CI 環境
  • vercel deploy --prebuilt : 部署建置後的輸出直接給 Vercel, 透過 Vercel 的建置系統傳遞
更新 Vercel CLI 到最新版( npm i -g vercel )來試試看, 然後看看文件.

加強了 Vercel CLI 的能力

我們將全新的指令加入 Vercel CLI, 幫助開發者在本地建置時執行與除錯, 以及部署到 Vercel.

將建置與部署分開

當你為 Web 以前端框架建置時, 基礎架構平台, 像是 Vercel, 需要轉譯框架輸出成一種平台看得懂的格式.
使用 vercel build , 我們整合了絕大部分的建置系統進到我們的開源 CLI, 讓你在本地建置整個專案, 複製 Vercel 建置系統的結果.

將原生功能都建置進你自己的框架

很多框架, 像是 Next.js, 已經能夠透過在框架程式碼的簡單配置選擇, 利用 Vercel 的平台功能, 像是 ISR 和 Edge rendering.
藉由開啟這些能力給所有框架, 透過 Build Output API, 我們給予所有框架作者, 有能力且輕鬆地整合這些原始的基礎架構, 包括:
  • Edge Functions
  • Serverless Functions
  • Server-side Rendering(SSR)
  • Static Generation
  • Image Optimization
  • ...等等
透過讓 .vercel/output 資料夾符合 Build Output API 規格, 就能支援這些全部的功能. 而且當你準備好部署, 如果需要, 你可以使用 vercel deploy --prebuilt 跳過建置步驟, 直接上傳 .vercel/output 資料夾.
我們相信這個步驟很重要, 當開發者有靈感時, 讓他們有能力去創造, 而且不會被基礎架構限制.

支援所有前端框架

我們參與了框架作者們, 幫助他們的專案運用 Build Output API. 做一些驚人的新能力:
  • SvelteKit 現在可以用 Vercel Edge Functions 在邊緣執行
  • Astro 現在可以用 Vercel Edge Functions 在邊緣執行
  • Nuxt 正在處理 ISR 支援
我們對於這些開源創作者感到非常興奮. 為了要繼續在前端框架投資, Vercel 現在贊助了 Svelte, Nuxt, Astro, SilidJS 等等.
Chaol Liu
Chaol Liu
叫我 KO, 我是一名軟體工程師. 我的文章不只是單純的譯文(翻譯原文), 而是會以我的角度理解, 把語言之間的隔閡拆解, 讓你輕鬆學習到知識. 領域基本上無設限, 前端, 後端, DevOps 都會觸及.
留言0
查看全部
發表第一個留言支持創作者!