Latest

統一後的店家選取器,本地找不到時列出 Google 地圖結果

Day5 [coffee-review] 品鑑表單上的「店家」:筆記搬進表單、搜尋合成一格

Coffee Review 品鑑表單最上面的「店家」有兩個問題:店家筆記只能從店家頁填,所以沒人填;選店家又拆成「選擇」和「新增」兩套,猜錯就撞 unique constraint。記錄把筆記搬進表單、把搜尋合成一個輸入框時的取捨(筆記要不要自己的儲存鍵、dirty 跟誰比、什麼時候才問 Google),以及 code review 才抓出來的三個坑:listener 疊兩層讓 chip 點了沒用、失敗 toast 被成功訊息蓋掉、把 LatLng 的方法拆下來呼叫讓從 Google 新增店家整條壞掉。

September 19, 2026 · 2 分鐘
兩個 Access application

Day4 [art-tracking] 掛上自己的網域,並用 Cloudflare Access 擋在登入後面

Art-Tracking 上線後的第一個問題:只有 workers.dev 網址、API 全 401。記錄把它掛上 art.kiwi-walk.com、用 Cloudflare Access 保護整站卻讓 agent 路徑 bypass 的取捨,Worker 端怎麼自己驗 JWT 做到 fail closed,以及靠 302 裡的 AUD 抓出 policy 設錯的過程。

September 18, 2026 · 5 分鐘
第一版與第二版的技術棧對照

Day3 [art-tracking] 技術選型:為什麼從 Vercel + Supabase 搬到 Cloudflare,而不是像 coffee-review 用 GitHub Pages + Supabase

Art-Tracking 第一版跑在 Vercel + Supabase 上,第二版(2026-09)整個搬到 Cloudflare Workers。這篇講為什麼不能像 coffee-review、commute 一樣用 GitHub Pages + Supabase,為什麼不留在 Vercel,以及 Hono、Drizzle、D1、R2、Vitest workers pool 這幾個選擇各自的理由與代價。

September 17, 2026 · 5 分鐘
展覽首頁

Day2 [art-tracking] 看展追蹤器要做什麼、不做什麼:規劃時的六個取捨

Art-Tracking 第二版動工前,先決定它是給誰用、抓什麼、狀態怎麼分、首頁要不要逼我表態、排序聽誰的、來源壞了怎麼辦。這篇記錄六個產品面的取捨與背後的理由,以及每一個取捨落到資料模型、ingest 合約與程式碼上長什麼樣。

September 16, 2026 · 5 分鐘

Day1 Side Project 專案盤點

系列開場:用 Claude 把個人興趣做成網站,先盤點手上的四個 Side Project——Coffee Review、Commute、Daily 與正在製作的 Art-Tracking,以及前三個共用的「GitHub Pages + Supabase」架構。

September 15, 2026 · 1 分鐘