flutter-engineeringlisted
Install: claude install-skill HeyEddi-com/heyeddi-skills
# Flutter Engineering
Baseline **Flutter engineering** for HeyEddi apps. Detects which stacks apply and adds the correct tooling — Vue projects should use `@project-engineering` instead.
## Subagents (default)
Delegate scaffold/audit/test scripts to **Task** `shell`; repo discovery to `explore`. Main chat picks stack from audit JSON. See `reference/subagents.md`.
## Stacks
| Stack | When | Tooling added |
|-------|------|----------------|
| **Flutter** | Mobile / web frontend | `pubspec.yaml`, Riverpod, go_router, Material 3, widget tests |
| **FastAPI** | REST API backend | `backend/`, pytest, `openapi.json`, uvicorn on **8090** |
| **Firebase** | Firestore / Auth | `firebase.json`, rules, emulators |
Declare intent in `.heyeddi/stack.json`:
```json
{
"frontend": "flutter",
"backends": ["fastapi"],
"web_port": 8085,
"api_port": 8090
}
```
Or `"backends": ["firebase"]` or `["fastapi", "firebase"]`.
## Workflow
1. **`audit_scaffold`** — per-layer JSON (flutter / fastapi / firebase).
2. **`scaffold_stack --stack auto`** — fills gaps (`flutter`, `fastapi`, `firebase`, or `full`).
3. **`ensure_flutter`** + **`ensure_python`** (via `@project-engineering`) as needed.
4. **`dev_server_info`** — Flutter web `:8085`, API `:8090`, Firebase emulators `:4000`.
5. Implement features (`@design-handoff-flutter`, `@flutter-patterns`, `@dart-type-bridger`).
6. **`run_tests`** + **`run_backend_tests`** + **`verify_build`**.
## Local dev servers
| Stack | Command | URL |
|--