# 管理者用環境構築手順 (Admin Setup Guide)

プロジェクト作成時に一度だけ行う初期設定．管理者が実施する．

## GitHub リポジトリの作成 (Create GitHub Repository)

```bash
gh repo create MiniTIAS --private
```

※ GitHub CLI（`gh`）が未認証の場合は `gh auth login` を先に実行する．

## セットアップスクリプトの作成 (Create Setup Script)

メンバーが環境を構築する際に使用するスクリプトを作成し，リポジトリに含める．

### ディレクトリ構成

```text
MiniTIAS/
├── scripts/
│   └── setup.ps1
```

### `scripts/setup.ps1`

セットアップスクリプト本体は `scripts/setup.ps1` にコミット済み．二重管理による乖離を避けるため，本書にはコード全文を載せない（変更はスクリプト側を正とする）．スクリプトは以下を自動実行する．

- Scoop の `extras` バケット追加
- Flutter SDK（`scoop install flutter`）
- Android Studio（`scoop install extras/android-studio`）
- GitHub CLI（`scoop install gh`）

実行後の次手順（Android Studio セットアップウィザード → `flutter doctor --android-licenses` → `flutter doctor` → `gh auth login`）はスクリプト末尾にも表示される．詳細は [ENV_02_環境構築手順.md](ENV_02_環境構築手順.md) を参照．

## VS Code 設定ファイルの作成 (Create VS Code Config)

### `.vscode/extensions.json`

推奨拡張機能を定義する．

```json
{
  "recommendations": [
    "Dart-Code.flutter",
    "Dart-Code.dart-code"
  ]
}
```

### `.vscode/settings.json`

プロジェクト固有の設定を定義する．

```json
{
  "editor.formatOnSave": true,
  "dart.flutterSdkPath": null,
  "[dart]": {
    "editor.defaultFormatter": "Dart-Code.dart-code",
    "editor.rulers": [80]
  }
}
```

## `.gitignore` の作成 (Create .gitignore)

Flutter プロジェクト作成時（`flutter create`）に自動生成されるが，必要に応じて以下を追加する．

- `.env` — 環境変数（機密情報）
- `*.jks` — Android 署名キー

## Flutter プロジェクトの作成 (Create Flutter Project)

```bash
flutter create --org com.example mini_tias
```

※ パッケージ名・組織名は正式に決定してから実行する．

## チェックリスト (Checklist)

管理者は以下をすべて完了させてからメンバーに展開する．

- [ ] GitHub リポジトリの作成（private）
- [ ] `scripts/setup.ps1` の作成・動作確認
- [ ] `.vscode/extensions.json` の作成
- [ ] `.vscode/settings.json` の作成
- [ ] `.gitignore` の確認
- [ ] Flutter プロジェクトの作成（`flutter create`）
- [ ] 初回コミット・プッシュ
- [ ] メンバーにリポジトリへのアクセス権を付与
