Assemble について
何ができるか
マーベルの映画・ドラマについて「観た・観てる・観たい」を記録し、URL ひとつで誰にでも共有できます。アカウントもパスワードも不要です。
仕組み
- 「リストを作る」を押すと、公開用のリスト ID と非公開の編集トークンが発行されます。
- トークンはブラウザの localStorage にだけ保存されます。URL を知っている人は誰でも閲覧できますが、編集できるのはトークンを持つブラウザだけです。
- サイトデータを消したりブラウザを変えたりすると、リストは公開されたまま閲覧専用になります。復旧手段はないので、その場合は新しいリストを作ってください。
観た観てる観たい
1 マス = 1 日。GitHub の草のように、濃いほどその日に観た作品が多い。
データソース
API
読み取り専用エンドポイントは公開・CORS 許可です。書き込みエンドポイントはリストの Bearer トークンが必要です。
| GET | /api/works | - |
| GET | /api/stats | - |
| GET | /api/lists/:id | - |
| POST | /api/lists | rate limit |
| PATCH | /api/lists/:id | Bearer |
| PUT | /api/lists/:id/entries/:slug | Bearer |
| DELETE | /api/lists/:id/entries/:slug | Bearer |
curl -X PUT https://assemble.mori22.com/api/lists/<id>/entries/iron-man \
-H "Authorization: Bearer <token>" -H "Content-Type: application/json" \
-d '{"status":"watched","watched_on":"2008-05-02"}'status: watched | watching | want · watched_on: YYYY-MM-DD (optional)
技術スタック
Bun、Cloudflare Workers 上の Hono(サーバーサイド JSX)、リスト保存に Cloudflare D1、クライアントアセットに Vite + Tailwind CSS v4、Biome と Vitest。作品データは姉妹プロジェクトの marvel-db(Hono + D1)から取得しています。
作った理由
マーベル作品は複数のユニバースにまたがって 100 本近くあり、「どこまで観た?」の会話は意外と長くなります。Assemble はそれをリンクひとつにまとめ、さらに全員のリストを集計することで、実際にどの作品が観られているのかを見えるようにします。