diff --git a/README.md b/README.md index 22cb01d..ba79556 100644 --- a/README.md +++ b/README.md @@ -1,17 +1,93 @@ -# mini_tias +# MiniTIAS -A new Flutter project. +千葉大学フロンティア医工学センターの舌画像撮影・解析システム(TIAS)のスマートフォン版。 +既存の積分球装置による撮影と画質を比較するため、まずは撮影・保存に特化したアプリとして開発。 -## Getting Started +## 主な機能 -This project is a starting point for a Flutter application. +- フロントカメラによる舌画像の撮影(PNG 無圧縮保存) +- 3 秒カウントダウンタイマー +- 画面輝度調整スライダー(LED 光源の補助) +- 撮影画像の一覧表示・拡大閲覧・削除 +- 端末を逆さに装着する専用アタッチメントに対応した UI 回転 -A few resources to get you started if this is your first Flutter project: +## 対象デバイス -- [Learn Flutter](https://docs.flutter.dev/get-started/learn-flutter) -- [Write your first Flutter app](https://docs.flutter.dev/get-started/codelab) -- [Flutter learning resources](https://docs.flutter.dev/reference/learning-resources) +- AQUOS sense3(フロントカメラ + LED ライト付きアタッチメント) -For help getting started with Flutter development, view the -[online documentation](https://docs.flutter.dev/), which offers tutorials, -samples, guidance on mobile development, and a full API reference. +## 技術スタック + +| 項目 | 技術 | +|------|------| +| フレームワーク | Flutter 3.11 / Dart | +| 状態管理 | Provider | +| カメラ | camera パッケージ(Camera2 API) | +| 画像処理 | image パッケージ(YUV→PNG 変換) | +| 権限管理 | permission_handler | + +詳細は [docs/02_ENV/ENV_01_技術スタック.md](docs/02_ENV/ENV_01_技術スタック.md) を参照。 + +## セットアップ + +```powershell +# 1. リポジトリをクローン +git clone https://github.com/rintoHasegawa/MiniTias.git +cd MiniTias + +# 2. セットアップスクリプトを実行(Flutter・Android SDK 等を自動インストール) +./scripts/setup.ps1 + +# 3. ライセンスに同意 +flutter doctor --android-licenses + +# 4. 環境を確認 +flutter doctor +``` + +詳細な手順は [docs/02_ENV/ENV_02_環境構築手順.md](docs/02_ENV/ENV_02_環境構築手順.md) を参照。 + +## ビルド・実行 + +```bash +# USB デバッグを有効にした端末を接続 +flutter devices # 端末が認識されていることを確認 +flutter run # ビルド&実行 +``` + +## プロジェクト構成 + +``` +lib/ +├── screens/ # 画面(撮影・一覧) +├── providers/ # 状態管理(カメラ・ギャラリー) +├── services/ # ビジネスロジック(ファイル保存・権限・RAW 変換) +├── widgets/ # 共通ウィジェット(プレビュー・シャッターボタン・グリッド) +├── app.dart # アプリ設定 +└── main.dart # エントリポイント + +docs/ +├── 01_GUIDE/ # 開発規約・ルール +├── 02_ENV/ # 環境構築 +├── 03_PLAN/ # 要件定義・開発ステップ +└── 04_SPEC/ # 画面機能仕様 +``` + +## 開発ガイド + +| ルール | 概要 | +|--------|------| +| ブランチ命名 | `feature/` `fix/` `docs/` `chore/` + kebab-case | +| コミットメッセージ | `[add]` `[update]` `[fix]` `[remove]` `[clean]` + 日本語 | +| 実装フロー | `/implement` でコーディング → テスト → リファクタリング | +| コミット前 | `dart analyze` → `dart format .` → `flutter test` | + +詳細は [docs/01_GUIDE/](docs/01_GUIDE/) 配下の各ガイドを参照。 + +## ドキュメント + +- [要件定義書](docs/03_PLAN/PLAN_01_要件定義書.md) +- [開発ステップ](docs/03_PLAN/PLAN_02_開発ステップ.md) +- [画面機能仕様書](docs/04_SPEC/SPEC_01_画面機能仕様書.md) +- [Git 運用ルール](docs/01_GUIDE/GUIDE_04_Git運用ルール.md) +- [コーディング規約](docs/01_GUIDE/GUIDE_06_コーディング規約.md) +- [テスト方針](docs/01_GUIDE/GUIDE_07_テスト方針.md)