Initial commit: Voice controlled device application, specs and Gitea Actions workflow
This commit is contained in:
@@ -0,0 +1,60 @@
|
||||
# プロジェクト構成定義書 (Project Configuration)
|
||||
|
||||
## 1. プロジェクト基本情報 (Basic Information)
|
||||
- **プロジェクト名**: Android 音声操作端末アプリ (Voice-Controlled Android App)
|
||||
- **対象パス**: `/root/.gemini/antigravity-cli/scratch/voice_controlled_device`
|
||||
- **開発種別**: 新規開発 (New Development)
|
||||
- **対象デバイス / OS**: Android OS 10.0+ (API Level 29 以上推奨)
|
||||
- **ハードウェア設計の有無**: なし (市販/標準Android端末の上で動作するソフトウェア開発。内蔵マイク・スピーカー・Bluetoothオーディオ機器等を使用)
|
||||
- **主なユースケース**: ハンズフリーによる音声認識・コマンド入力、対話システム、音声読み上げ (TTS)、端末状態管理
|
||||
|
||||
---
|
||||
|
||||
## 2. 技術スタック (Tech Stack)
|
||||
- **プログラミング言語**: Kotlin (v1.9+)
|
||||
- **UIフレームワーク**: Jetpack Compose (宣言型UI)
|
||||
- **音声認識 (Speech Recognition)**: `SpeechRecognizer` API / Android Voice Interaction API
|
||||
- **音声合成 (Text-to-Speech)**: `TextToSpeech` (TTS) Engine
|
||||
- **非同期処理・状態管理**: Kotlin Coroutines, StateFlow / SharedFlow
|
||||
- **アーキテクチャモデル**: Clean Architecture + MVVM (Model-View-ViewModel)
|
||||
- **依存関係注入 (DI)**: Hilt / Koin
|
||||
- **データ保持・キャッシュ**: Room Database / DataStore Preferences
|
||||
|
||||
---
|
||||
|
||||
## 3. テスト実行方式 & CI/CD (Testing & CI Execution)
|
||||
- **テスト実行方式**:
|
||||
- **ローカルテスト (Local Execution)**:
|
||||
- 単体テスト: JUnit 5, MockK, Turbine (Flow/Coroutinesテスト)
|
||||
- UI・結合テスト: Jetpack Compose Test Framework, Robolectric
|
||||
- **CI実行環境 (CI Pipeline)**:
|
||||
- Gitea Runner / GitHub Actions によるビルド自動化、静的解析 (ktlint/detekt)、単体テスト実行
|
||||
- **テストスコープ**:
|
||||
- Domain / Data レイヤーのユニットテスト完全自動化
|
||||
- SpeechRecognizer / TTS ラッパーインターフェースのモックテスト
|
||||
|
||||
---
|
||||
|
||||
## 4. 推奨ディレクトリ構成 (Directory Structure)
|
||||
```
|
||||
voice_controlled_device/
|
||||
├── docs/
|
||||
│ ├── 00_project_config.md # 本構成定義ファイル
|
||||
│ └── 02_specifications.md # 機能仕様書
|
||||
├── app/
|
||||
│ ├── src/
|
||||
│ │ ├── main/
|
||||
│ │ │ ├── java/com/example/voiceapp/
|
||||
│ │ │ │ ├── data/ # リポジトリ・ローカルデータソース
|
||||
│ │ │ │ ├── domain/ # ユースケース・モデル定義
|
||||
│ │ │ │ ├── ui/ # Jetpack Compose UI / ViewModel
|
||||
│ │ │ │ └── voice/ # SpeechRecognizer & TTS ラッパーモジュール
|
||||
│ │ │ └── AndroidManifest.xml
|
||||
│ │ └── test/ # 単体テストコード
|
||||
└── build.gradle.kts
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 5. 次の工程への引継ぎ事項
|
||||
- 機能仕様書 (`docs/02_specifications.md`) の作成に進みます。
|
||||
Reference in New Issue
Block a user