projects
personal project
みらい不動産 顧客管理システム
空き家管理・売買仲介を1人で営む不動産事業者を想定した、LINE連携の顧客管理システム。売主・買主等のタグ別配信、契約日を基準にした業務報告・更新リマインドの自動通知、現場写真からのAI報告書草案生成までを1つの管理画面にまとめました。
tech stack
Next.jsTypeScriptNeonDrizzle ORMLINE Messaging APICloudflare R2Cloudflare WorkersVercel AI SDKGemini
story
架空の不動産会社「みらい不動産」を舞台に、契約後の顧客対応を担うシステムとして設計。不動産業を1人で営む事業者が抱える「タグ別配信」「報告・更新期限のリマインド」「現場写真からの報告書作成」という3つの課題に向き合いました。ドメイン層をLINE SDKやDBの実装から切り離し、本番実装とデモ用Fake実装を1箇所で差し替えられるアーキテクチャにこだわりました。
物件案内AIエージェントを見るhighlights
- —Server Actionの直接POST到達によるガード迂回を防ぐため、DB操作関数群にopaque tokenの認証permitを要求させ、呼び忘れを型エラーとして検出
- —Branded Types・opaque token(QuotaGuard)でID取り違えや送信上限超過をコンパイル時に防止
- —Webhookは処理後に記録する順序と冪等なupsertで、LINE再送時の取りこぼし・二重処理を防止
- —リマインド発火日は契約日から都度計算する純粋関数で実装し、月末クランプ・うるう年・JST境界をテストで担保
デモ用アカウント
| role | password | |
|---|---|---|
| 管理者 | 不要 | test0123 |
ポートフォリオ公開用のデモ。LINE送信・メール送信は行われず、AI清書もテンプレート文言に置き換わります(実際には送信・生成されません)。