ponshu-room-lite/docs/archive/START_HERE_FINAL.md

11 KiB
Raw Blame History

🚀 ぽんるーむ Lite - 完全スタートガイド

プロジェクト名: ぽんるーむ Lite (Ponshu Room Lite) バージョン: 2.0 - "My Digital Sake Cellar with Personality" 作成日: 2025-12-29 このフォルダの状態: 完全にクリーン(設計書のみ)


💡 「Lite」の意味

「Lite」= 機能制限ではなく、「洗練されたコア体験」

  • 写真を主役にした雑誌のようなUI
  • 完全ローカル保存(プライバシー最優先)
  • MBTI・四柱推命と日本酒を掛け合わせた「あなただけの診断」
  • フォント切り替え機能(明朝体 ⇔ ゴシック体)

将来の「Pro」版:

  • Synology NAS連携
  • 高度な統計分析
  • チーム共有機能

🎯 このアプリの3つの魂

🍶 1. 「瞬撮」- 魔法の解析体験

カメラを向けて撮るだけで、Gemini 3.0がリアルタイム実況しながら解析。

「ラベルを読んでいます...」
「お、これは山口県の銘柄ですね...」
「データを整理しています...」

🎨 2. 「美録」- インスタ映えする情報の見せ方

雑誌のようなレイアウト、選べるフォント、Instagram用正方形画像生成。

🧩 3. 「遊び心」- あなただけのパーソナライズ

  • MBTI × 日本酒相性診断: 「このお酒はENFPのあなたにピッタリ
  • 四柱推命 × 今日の一滴: 「今日の運気を上げる辛口な一本」
  • フレーバー・マトリックス: あなたの好みを可視化

このフォルダの状況

現在のフォルダ: C:\Users\maita\posimai-project\ponshu_room_lite

含まれるもの:
✅ FINAL_REQUIREMENTS.md最終仕様書
✅ ANTIGRAVITY_PROMPT.md実装手順書
✅ UI_UX_DECISION_GUIDE.mdデザイン決定ガイド
✅ START_HERE_FINAL.mdこのファイル

含まれないもの:
❌ 古いWeb版のコード完全に除外
❌ lib/ フォルダ
❌ pubspec.yaml
❌ 何のコードもありません

これは意図的です。完全にゼロから始めます。


🎯 Antigravity向け - 最終完全プロンプト

以下をAntigravityに送ってください


@Antigravity

ぽんるーむ Lite をゼロから実装します。
このフォルダponshu_room_liteは完全にクリーンです。

📂 現在のフォルダ:
C:\Users\maita\posimai-project\ponshu_room_lite

📄 読み込むべきドキュメント:
1. START_HERE_FINAL.md最初に読む
2. ANTIGRAVITY_PROMPT.mdメイン実装手順
3. FINAL_REQUIREMENTS.md完全仕様書

🔑 新しいAPIキー:
AIzaSyA2BSr16R2k0bHjSYcSUdmLoY8PKwaFts0

🎨 デザイン方針Lite版の魂:

【写真最大化】
- 余白は最小限padding: 8dp, separator: 4dp
- 写真サイズ: 120x120
- フル幅カード
- 極細ボーダー0.5px)で区切り

【フォント戦略】
- デフォルト: Noto Sans JP親しみやすいゴシック体
- 設定で切り替え可能: Noto Serif JP高級感のある明朝体
- ユーザーが好みで選べるようにする

【パーソナライズ機能の準備】
- UserProfileモデルを作成:
  - MBTI診断結果16タイプ
  - 生年月日(四柱推命用)
  - 好みのフォント設定
- これらは Phase 2以降で使用今は枠だけ準備

⚠️ 絶対にやってはいけないこと:
❌ ../ponshu-room/ フォルダを参照しない
❌ 古いコードをコピーしない
❌ Web版のUIを踏襲しない

✅ やるべきことPhase 1:

【1-1. プロジェクト初期化】
1. このフォルダで flutter create . を実行
2. pubspec.yaml を設定google_fonts, hive, riverpod, etc.
3. Android設定compileSdk: 36, targetSdk: 35

【1-2. データモデル】
1. SakeItem モデル:
   - 基本情報銘柄名、酒蔵、都道府県、etc.
   - キャッチコピーGeminiが自動生成
   - フレーバースコアsweetnessScore, bodyScore

2. UserProfile モデル(🆕):
   - mbtiType: String?  // 例: "ENFP"
   - birthDate: DateTime?  // 四柱推命用
   - fontPreference: String  // "serif" or "sans"
   - createdAt: DateTime

【1-3. テーマ設定】
1. AppTheme を作成:
   - posimaiカラー#376495
   - 動的フォント切り替え対応
   - デフォルトは Noto Sans JP

2. FontProviderRiverpodを作成:
   - UserProfileからフォント設定を読み込み
   - アプリ全体でリアクティブに切り替え

【1-4. Gemini AI解析】
1. GeminiService:
   - モデル: gemini-2.5-flash-latest
   - リアルタイム実況機能
   - キャッチコピー自動生成

【1-5. UI実装】
1. ホーム画面4タブ:
   - 酒リスト(フル幅カード)
   - マップ
   - AIソムリエ
   - プロフィール

2. フル幅カード:
   - 左: 写真120x120
   - 右: 銘柄名(選択したフォント)、データ

3. プロフィール画面:
   - フォント切り替えスイッチ
   - MBTI入力欄今は空でOK
   - 生年月日入力欄今は空でOK

【1-6. SafeArea対応】
- すべての画面でSafeAreaを徹底使用
- Android 15で見切れ・重なりゼロ

🚀 開始:
ANTIGRAVITY_PROMPT.md の「プロジェクト作成」セクションから開始してください。
Phase 1-1プロジェクト初期化完了後に報告をお願いします。

💡 重要な追加仕様:

【フォント切り替えの実装】
設定画面に以下を追加:

```dart
// 設定画面の一部
Row(
  mainAxisAlignment: MainAxisAlignment.spaceBetween,
  children: [
    Text('フォント設定'),
    SegmentedButton(
      segments: [
        ButtonSegment(value: 'sans', label: Text('ゴシック')),
        ButtonSegment(value: 'serif', label: Text('明朝')),
      ],
      selected: {currentFont},
      onSelectionChanged: (Set<String> newSelection) {
        // UserProfileを更新
        // AppThemeを再構築
      },
    ),
  ],
)

【UserProfileモデルの完全コード】

// lib/models/user_profile.dart
import 'package:hive/hive.dart';

part 'user_profile.g.dart';

@HiveType(typeId: 1)
class UserProfile extends HiveObject {
  @HiveField(0)
  String? mbtiType;  // "ENFP", "INTJ", etc.

  @HiveField(1)
  DateTime? birthDate;  // 四柱推命用

  @HiveField(2)
  String fontPreference;  // "serif" or "sans"

  @HiveField(3)
  DateTime createdAt;

  @HiveField(4)
  DateTime? updatedAt;

  UserProfile({
    this.mbtiType,
    this.birthDate,
    this.fontPreference = 'sans',  // デフォルトはゴシック
    required this.createdAt,
    this.updatedAt,
  });
}

【Phase 2以降の予告】

  • MBTI × 日本酒相性診断
  • 四柱推命 × 今日の一滴
  • フレーバー・マトリックス
  • Instagram用画像生成診断結果入り

これらは Phase 1完了後に実装します。 今は UserProfile の枠だけ準備してください。


---

## 📋 実装の流れ

### Phase 0: 準備(今ここ)
- [x] 新しいフォルダ作成ponshu_room_lite
- [x] 設計書をコピー
- [ ] Antigravityに指示を送る

### Phase 1: MVP5-6時間
- [ ] プロジェクト初期化
- [ ] データモデルSakeItem + UserProfile
- [ ] フォント切り替え機能
- [ ] Gemini解析リアルタイム実況
- [ ] フル幅カード
- [ ] SafeArea対応

### Phase 2: パーソナライズ3-4時間
- [ ] MBTI入力UI
- [ ] MBTI × 日本酒相性診断
- [ ] 四柱推命 × 今日の一滴
- [ ] フレーバー・マトリックス

### Phase 3: 共有機能2時間
- [ ] Instagram用画像生成診断結果入り
- [ ] キャッチコピー付き共有

### Phase 4: 遊び心3時間
- [ ] 日本酒・制覇マップ
- [ ] AIソムリエチャット

**合計: 13-15時間**

---

## 🎨 フォント選択のガイド

### デフォルト: Noto Sans JPゴシック体

印象: 親しみやすい、読みやすい、診断コンテンツと相性◎ おすすめな人: MBTIや診断を楽しみたい、カジュアルに記録したい


### オプション: Noto Serif JP明朝体

印象: 高級感、伝統、雑誌のような洗練 おすすめな人: 日本酒の本格的な雰囲気を大切にしたい


**いつでも切り替え可能!設定画面からワンタップ。**

---

## 🔐 APIキーの設定

Antigravityが `lib/secrets.dart` を作成した後、以下が正しく設定されているか確認してください:

```dart
// lib/secrets.dart
class Secrets {
  static const String geminiApiKey = 'AIzaSyA2BSr16R2k0bHjSYcSUdmLoY8PKwaFts0';
}

完成確認チェックリスト

Phase 1 MVP完成の確認

  • カメラで日本酒を撮影できる
  • Gemini解析で「ラベルを読んでいます...」と表示される
  • キャッチコピーが自動生成される
  • フル幅カード写真120x120で表示される
  • フォント切り替えが動作する(ゴシック ⇔ 明朝)
  • Android 15で見切れない
  • UserProfileが保存される

Phase 2 パーソナライズ完成の確認

  • MBTI診断結果を入力できる
  • 「このお酒はあなたENFPにピッタリ」と表示される
  • フレーバー・マトリックスが表示される

最終完成の確認

  • すべての機能が動作
  • 「雑誌のような」デザイン
  • 60fpsの滑らかな動作
  • 「魔法のような」心地よさ
  • 知人に見せたくなる

📞 トラブルシューティング

もしAntigravityが古いコードを参照しようとしたら

即座に指摘してください:

@Antigravity

古い ponshu-room フォルダは参照しないでください。
このフォルダponshu_room_lite内のドキュメントだけを見てください。

もし余白が大きすぎたら

@Antigravity

余白が大きすぎます。以下に修正してください:
- ListView.padding: EdgeInsets.symmetric(horizontal: 8, vertical: 12)
- separatorBuilder: SizedBox(height: 4)
- 写真サイズ: 120x120

もしフォント切り替えが動作しなかったら

@Antigravity

フォント切り替えが動作しません。
UserProfileのfontPreferenceを変更したら、AppThemeが再構築されるようにしてください。
Riverpodのproviderを使って、リアクティブに更新してください。

🎊 準備完了!

すべての準備が整いました。

次のアクション:

  1. 上記の「Antigravityへの指示」をコピー
  2. Antigravityに送信
  3. 実装開始を待つ

「ぽんるーむ Lite」の誕生を楽しみにしています🍶


💡 将来の拡張Pro版へ

Phase 1-4が完了し、知人にも好評だったら

ぽんるーむ Pro構想

  • Synology NAS自動バックアップ
  • 複数デバイス同期
  • チーム共有機能
  • 高度な統計分析
  • カスタムテーマ
  • エクスポート機能強化

まずは Lite を完璧に仕上げましょう!