AIが生成したヒントを頼りに、実際の場所を探索するモバイルゲーム。 ユーザーは気分と距離の条件を選び、隠れた名所を発見する体験を提供します。
hackathon_gdgoc2026/
├── app/ # Android アプリ (Kotlin/Jetpack Compose)
├── backend/ # バックエンドAPI (Python/FastAPI)
├── container/ # 共通コンテナ設定
└── .devcontainer/ # 開発環境設定
[Android App (Kotlin)] <---> [Cloud Run (FastAPI)] <---> [Firestore]
|
+---> [Vertex AI (Gemini)]
+---> [Google Maps API]
cd backend
# 環境構築
python3 -m venv .venv
source .venv/bin/activate
pip install -r src/api/requirements.txt -r .devcontainer/requirements-dev.txt
# サーバー起動
uvicorn src.main:app --reload
# テスト
pytest tests/ -vcd app
# デバッグビルド
./gradlew assembleDebug
# インストール
./gradlew installDebugビルドタイプ: debug / staging / release
| 項目 | 技術 |
|---|---|
| 言語 | Kotlin |
| UI | Jetpack Compose |
| HTTP | Retrofit + OkHttp |
| ビルド | Gradle (Kotlin DSL) |
| 項目 | 技術 |
|---|---|
| 言語 | Python 3.11+ |
| フレームワーク | FastAPI |
| DB | Firestore |
| AI | Vertex AI (Gemini) |
| 地図 | Google Maps Places API |
| IaC | Terraform |
| メソッド | パス | 説明 |
|---|---|---|
| POST | /users | ユーザー登録 |
| POST | /explorations | 探索開始 |
| POST | /explorations/{id}/hints | ヒント取得 |
| POST | /explorations/{id}/resume | 探索再開 |
| POST | /explorations/{id}/interrupt | 探索中断 |
| POST | /explorations/{id}/arrive | 到着通知 |
詳細は openapi.yaml を参照してください。
main: 安定版(リリース用)dev: 開発統合ブランチfeat/*: 機能開発fix/*: バグ修正
<type>: <subject>
Refs: #<issue-number>
| type | 用途 |
|---|---|
| feat | 新機能の追加 |
| fix | バグ修正 |
| docs | ドキュメントのみの変更 |
| refactor | 機能変更を伴わないコード改善 |
| test | テストの追加・修正 |
| chore | ビルド・設定などの雑務 |
- プラットフォーム: Cloud Run
- リージョン: asia-northeast1
- トレーシング: OpenTelemetry → Cloud Trace
- 配布: Android APK
- ビルドタイプ: debug / staging / release
MIT License