這是什麼
Coffee Review 是一個給自己用的咖啡評鑑工具,靈感來自 Cup of Excellence(CoE)的杯測 格式。它收三種記錄:在家沖一支豆子的沖煮、在咖啡廳喝一杯的品鑑,以及桌上同時 擺好幾杯、每杯用編號識別、最後排名次的杯測。三種都用一致的方式記下味覺印象—— 香氣、風味、口感、總分,連同當下的筆記與風味輪選擇一起保存下來。
為什麼做
市面上的杯測表單不是太專業、就是太隨意。專業的 CoE 表把總分當成八個項目分數加總,但我 實際喝的時候,腦中先浮現的其實是一個整體的分數,再回頭去拆解為什麼是這個分數。所以這個 App 反過來:總分是直接輸入的(74–96),八個參考項目(甜度、酸質、餘韻……)只是選填 的對照,幫我事後檢查自己的直覺,而不是反過來綁架它。
怎麼用
新增記錄時先選類型。沖煮與品鑑是一筆記錄配一支豆;風味輪最多三層,選了深層會自動帶上 祖先節點;總分用兩段式選擇器:先挑獎牌級距,再點分數。
品鑑表單最上面的店家是一個輸入框:先找自己存過的店,找不到再列出 Google 地圖的結果, 不用先猜這家店建過了沒。對這家店的氛圍、服務等印象也直接在表單裡寫,不必另外跑去店家頁。
杯測拆成三個階段,每個階段只專注一件事:設定(日期、杯數、每杯的編號,三位數編號 可以一口氣打完或隨機產生)、評分(頂端只有杯號,點了切杯,只顯示評分卡)、揭曉 (依分數排序的杯卡,這時才填豆子資訊,任何欄位都還能改)。沒點過分數的杯子算「未評分」, 不會混進排名。
記錄列表可以依日期、分數、店家排序,也可以分組;分組時一場杯測會攤平成一杯一張卡, 各自落到自己的組。
技術重點
前端刻意做成 no build、no framework:一支 app.js 的 vanilla ES2022,Bootstrap 5.3 走
CDN,並透過 service worker 做成可安裝、可離線的 PWA。
後端原本是 GitHub Pages 加 Supabase,後來整套搬到 Cloudflare,跟 Art-Tracking 用同一套 技術棧:同一支 Worker 同時提供靜態檔與 API,資料放在 D1。改變最大的是登入——原本 Google OAuth 是 app 的一部分,現在交給 Cloudflare Access,請求碰到 Worker 之前登入就 結束了,前端一行 OAuth 程式碼都沒有。資料仍然依使用者隔離,只是保證從資料庫的 RLS 變成 每個查詢自己負責,所以對每一張有擁有者的表都補了「看不到別人的資料」的測試。
設計取捨
UI 全程繁體中文,介面盡量輕、欄位盡量少。為了讓舊紀錄不會因為新增欄位而壞掉,缺值一律 當成預設處理;把舊的「杯測」改名成「沖煮」時也只改顯示名稱、不動既有資料。這是一個會 長期陪自己喝咖啡的紀錄本,所以穩定與一致比花俏更重要。
