Skip to content

介紹

什麼是 Zwaggen?

  • 一句話:Zwaggen 是瀏覽器中的型別化 API 規格編輯器與執行時測試器。
  • 比喻:它把三個熟悉的工具結合在一起 — Postman(送真實請求)、Swagger/OpenAPI(描述 API)、Zod(用型別結構在執行時驗證回應)。
  • 相較於 Postman:Zwaggen 的規格就是唯一的事實來源。每一次收到的回應都會即時比對規格中的型別,一旦出現漂移立刻發現。
  • 相較於 Swagger:Zwaggen 是可互動的 — 文件化 API 的那份檔案本身就是用來測試 API 的檔案。
  • 相較於 Zod:驗證器內建在應用中,不用在自己的程式碼裡寫 TypeScript 就能用。

什麼時候用它

  • 正在設計一個新 API,想要一個同時包含型別、端點、範例的單一檔案,並在 git 中做版本控制。
  • 想要直接比對真實 API 與規格,而不必寫測試程式碼。
  • 在審查一個 API 變更,需要看兩個規格版本之間破壞性與非破壞性差異。
  • 已經維護了一份 OpenAPI 檔案,希望有比 Swagger UI 更快的編輯器與測試器。

什麼時候不用它

  • 已經有一個成熟的 Postman 工作區與 CI 測試套件 — Zwaggen 兩邊都會重疊。
  • 需要在 CI 強制執行 contract 測試。Zwaggen 目前是互動式工具;CI 模式已規畫(見 repo TODO)。
  • 需要 mock / stub。Zwaggen 會透過 CORS proxy 打到真實伺服器,不會假造回應。

文件其他頁面

  • 安裝與環境需求 — 執行 Zwaggen 本地所需的一切。
  • 快速上手 — 五分鐘完成第一份規格。
  • 核心概念 — 心智模型:Spec、Environments、Types、Endpoints。
  • 左側導覽列上每個功能一頁的指南。

CORS Proxy 頁說明何時、為何要搭配 npx zwaggen-proxy