技術スタック
| レイヤー |
技術 |
理由 |
| フロントエンド |
Next.js (App Router) |
慣れている、フルスタック |
| バックエンド |
Cloud Run (Node.js/Docker) |
GCPネイティブ、スケーラブル |
| DB |
Cloud SQL (PostgreSQL) |
長期視点、分析・レポート向き |
| ORM |
Prisma |
型安全、マイグレーション管理 |
| ストレージ |
Cloud Storage |
画像・QRコード保存 |
| 認証 |
Firebase Auth |
GCPファミリー、簡単 |
| 将来AI |
Gemini API / Vertex AI |
GCPネイティブ |
使わないもの
❌ Vercel — GCPで統一
❌ Firestore — 複雑なクエリが必要
❌ AWS — MVP段階では使わない(移行パスは残す)
Duolingo 5原則
| # |
原則 |
DubaiQuestへの適用 |
| 1 |
完了の定義を小さく固定 |
デイリーQuestは1つ。「今日のQuest」タップ→完了 |
| 2 |
自由度を減らして摩擦を消す |
「おすすめ」先頭固定。参加→QR→完了の一本道 |
| 3 |
ゲーム要素で行動ループ安定化 |
ストリーク維持 → XP獲得 → レベル/バッジ |
| 4 |
無料で母数最大化→データ改善 |
Quest参加完全無料。店舗側がB2B課金 |
| 5 |
忘れられない存在 |
WhatsAppリマインド通知「まだQuestしてないよ🔥」 |
核心: Duolingoが勝った理由は「ゲームっぽいから」ではない。
人間が継続できないという弱さを前提に、"やってしまう"行動構造を作ったことが勝因。