開源 · CLI · 為 Expo & React Native 團隊而生
storepulse 會把你管理的所有 iOS·Android App 的發布狀態 —— 版本、審查狀態、 逐步發布比例、測試軌道 —— 整合到同一塊終端機看板上。從設計上就是唯讀, 商店憑證永遠不會離開你的電腦。
$ storepulse · one board, both stores APP OS PRODUCTION BETA / TESTFLIGHT INTERNAL ───────────────────────────────────────────────────────────────────────────────────────────── Aurora [prod] iOS 2.4.1 LIVE · 2.5.0 REVIEW 2.5.0 LIVE (108) — Android 2.4.1 50% (241) 2.5.0 LIVE (250) 2.5.1 draft (251) Aurora Dev [dev] iOS — 2.6.0 LIVE (12) — Android — — 2.6.0 LIVE (12) Borealis [prod] iOS 1.9.2 LIVE · 1.9.3 REJECTED 1.9.3 LIVE (87) — Android 1.9.2 LIVE (192) 1.10.0 LIVE (200) —
為什麼
設計即唯讀
storepulse 不會送出、不會推進、也不會中止任何東西。它只問兩家商店 一個問題 ——「我的發布現在是什麼狀態?」—— 然後把答案畫出來。 沒有什麼會弄壞,也沒有什麼好擔心。
憑證只留在本機
請求從你的電腦直接送往 Apple 與 Google。沒有伺服器、不用註冊帳號、
也沒有遙測。金鑰只存在一開始就被 git 忽略的 .env 裡。
先是一個函式庫
核心是以注入憑證方式使用的函式庫,CLI 與 Web 儀表板只是它最早的 兩個介面。接下來是通知 —— 同一顆引擎,更多畫面。 實作兩個方法,就能接上你自己的資料來源。
功能
production / beta / internal)
× 狀態(live、in-review、rollout、rejected…)。
2.4.1 50% 代表一半使用者已經拿到新版本。
2.4.1 LIVE · 2.5.0 REVIEW 並排呈現 ——
這個在兩個主控台都得翻好幾層才看得到的「中間時刻」。
npx storepulse demo 就能用範例資料畫出完整看板
—— 連一把 API 金鑰都還沒建立,就能先評估這個工具。
storepulse serve 在瀏覽器中打開自動重新整理的看板。
選用的群組一次只顯示一個;設定中沒有群組時會隱藏選擇器。每張 App
卡片分開顯示 iOS 與 Android 列,並把最新套件放在發布管道旁。展開列
可以看到版本說明和 TestFlight 到期倒數,OS 標籤可篩選平台列。預設只
綁定 127.0.0.1。storepulse snapshot 則把看板輸出成 JSON。
latestTesterUrl,或依 versionCode 登記 provider 實際回傳的
installLinks。storepulse 不會猜測下載 URL,安裝舊建置可能
需要移除目前 App 時也會先提出警告。
EAS_TOKEN 和每個 App 的
easProjectId,商店裡的每個版本就能連回產出它的
EAS 建置:git commit、建置設定檔、送審狀態,一項不漏。
storepulse check --fail-on rejected,halted 把商店狀態
轉成 CI 判定。結束碼可區分正常、政策違規與收集錯誤,
--format json 可直接接到自動化流程。
快速開始
$ npx storepulse demo
不用 clone、不用安裝 —— 有 Node.js 20.12 以上就夠了。偏好瀏覽器?
npx storepulse serve --demo 會把同一塊看板開在
127.0.0.1:4780。
App 寫進 storepulse.config.json,金鑰放進
.env(一把 App Store Connect API 金鑰 + 一個 Play
服務帳戶 —— 都是 5 分鐘可完成的一次性設定)。
$ npx storepulse init # 產生兩個檔案 —— 接著填好即可
路線圖