予定も記録も、猫のいる部屋から。
離れて暮らすふたりのために開発した共有アプリです。
予定の確認も日々の記録も猫のいる部屋から始められます。暮らしに必要な機能とふたりで楽しめる遊びをひとつにまとめました。
猫のいる部屋を入口にしたデザインへ更新しました。従来の一覧型の画面にも切り替えられます。デモでも両方のデザインを試せます。


ふたりのカレンダー
それぞれの予定をひとつのカレンダーで確認できます。デートの計画や記念日も一緒に管理できます。

共有ノート
一緒にやってみたいことや忘れたくないことをノートに残せます。体調や食事の記録も別の画面にまとめています。

ガチャと模様替え
集めたコインでガチャを回すと家具が手に入ります。好きな家具を飾って部屋の雰囲気を変えられます。
部屋には猫が暮らしています。ごはんをあげることもできます。ミニゲームも用意しているので予定がない日にも楽しめます。




通信が切れても、使い続けられる。
記録は端末内に保存し、送信待ちの列を通して Supabase と同期します。通信が切れても使い続けられ、戻ったら追いつきます。猫の部屋の画面は three.js で描いています。
作りの要点
- 項目ごとに新しい方を残す
- ふたりが同じ記録を同時に直したときは、項目ごとに新しい方を残す構成です。差分の取得にはサーバーが振る通し番号を使い、端末の時計のずれに依存しないようにしています。
- 送信が詰まる不具合を潰す
- 同じ記録の変更が重なると送信待ちが詰まる不具合を、再現して直しました。8 並列の書き込みで、待ちが 8 件たまっていたのを 1 件にまとめています。
- 引き直しの起きないガチャ
- 抽選はサーバー側で行い、1 回ごとに識別子を付けています。再読み込みや二度押しをしても、同じ結果が返るだけです。
- 止まらない 3D 演出
- Blender で作った家具を three.js で表示します。WebGL が使えない端末では、静止画の演出に切り替えます。
- 14種
- ミニゲーム
- 16点
- ガチャの家具
- 29
- データベースの表
公開デモには架空の記録を使っています。変更はこのブラウザ内に保存されます。外部サービスとの通信は行いません。AIの返答もデモ用の内容です。
- 画面
- React 19 TypeScript Vite three.js
- 保存と同期
- IndexedDB(idb) Supabase Realtime
- 配布
- PWA(Service Worker)
- 3D 素材
- Blender(GLB)
