すべての仕事/プロジェクト 05 · 仕事

Kissa
喫茶

分類
Coffee finder and curator
種類
個人プロジェクト
年
2026
状態
公開中
アプリを開く

Kissa is not a myth but 喫茶: taking tea. It is the root of kissaten, the Japanese coffee house.

Torii Kiyonaga, “A Party of Merrymakers in a Tea-house at Shinagawa”, ca. 1783. The Metropolitan Museum of Art, CC0.
/01 · 課題

Four stars say nothing about the coffee

You find good cafés in an unfamiliar city through reviews that say nothing about the coffee. Four stars means friendly staff and fast wifi. Whether the bean was roasted recently is nowhere.

Kissa collects the attributes that matter and makes them searchable.

/02 · 手法

A curated list behind a web front end

A web front end over a curated list. The base data comes from a map source; the attributes that matter I maintain myself.

構成

RuntimeSvelteKit on Cloudflare Workers (adapter-cloudflare)
DataSupabase · cache in front of the map API
TestsPlaywright
/03 · 判断

A cache in front of the expensive call

Querying the map source costs per call and was the most expensive part. The obvious move would have been to request fewer fields. Instead there is now a cache in front of it.

The price: a newly opened café shows up late, and I run one more component that can fail. For a set that changes slowly that is the right trade. For opening hours it would have been the wrong one.

/04 · 結果

Numbers once there is traffic

No measured values yet. Once there is traffic, this chapter will report the cache hit rate, the cost per thousand searches against the map API, and p95 latency at the edge.

/05 · 次

Let the cafés maintain their own attributes

The hand-maintained attributes are the bottleneck. Next, some of them should come from the cafés themselves rather than from my typing.

/次のプロジェクト · 次へKotobaJLPT vocabulary drill