這是什麼
Commute 是一個記錄每天通勤的純靜態 PWA。畫面上只有一張「車票」按鈕,會依照現在是上班 還是下班、有沒有正在搭的車,自動變成「上車」或「下車」,在手機上單手點一下就完成(第一版 是四顆按鈕,後來收成這一顆)。每次打卡都會自動帶上當下的時間與天氣,不必手動輸入;上車 超過 40 分鐘還沒按下車,手機會收到推播提醒。資料累積起來之後,App 會畫成圖表,並依方向、 星期、天氣給出車程的中位數與 P90 預測。
為什麼做
通勤是每天都在發生、卻幾乎不會被記下來的事。我好奇自己「從家裡到公司」到底要花多久、 天氣或時段會不會明顯影響,但任何需要打開表單、手動填欄位的工具都太麻煩,撐不過三天。 所以這個 App 的核心只有一個要求:快到沒有藉口不記——按鈕大、步驟少、其餘自動補。
怎麼用
把網站「加入主畫面」後就像一個原生 App。上車點一下、下車再點一下,時間與天氣自動寫入; 之後在統計頁看自己的通勤分佈與趨勢,並參考系統根據歷史資料推算的車程預測。介面全程 繁體中文。
技術重點
純 HTML + ES modules,沒有 build step。後端是 Supabase Postgres,寫入走 RPC 並以 bcrypt 密鑰把關,避免匿名濫用。整站部署在 GitHub Pages,以 service worker 做成可離線、可安裝 的 PWA。
設計取捨
刻意不引入框架與打包工具,讓專案維持輕、好維護、隨開即用。功能只圍繞「記錄 → 統計 → 預測」這條主線,不做多餘的設定與裝飾——和我每天想要的通勤體驗一樣,越簡單越好。
