1.8 KiB
1.8 KiB
| domain | last_rule_review_commit | last_rule_updated_at |
|---|---|---|
| client | no-commit-yet | 2026-05-24 |
client
목적 / 책임
ALT의 Flutter client surface를 담당한다. web/mobile/desktop targets, application shell, routing, feature presentation, and client-side tests belong here.
포함 경로
apps/client/lib/main.dart- Flutter app bootstrapapps/client/lib/src/app/- app shell, theme, routerapps/client/lib/src/features/- feature presentation codeapps/client/test/- Flutter widget/unit testsapps/client/pubspec.yaml- Flutter package dependencies
제외 경로
services/api/- socket server runtimepackages/contracts/- schema source for generated contractspackages/domain/- Go domain models
주요 구성 요소
AltClientApp- Material app shell using RiverpodappRouterProvider-go_routerconfigurationDashboardScreen- initial responsive dashboard surface
유지할 패턴
- Keep app-level shell and router under
lib/src/app. - Put user-facing screens under the
lib/src/features/feature-name/presentationpattern. - Use Material 3 components and responsive navigation patterns.
- Test user-visible app shell behavior through Flutter tests.
다른 도메인과의 경계
- api: client connects to API; server lifecycle and socket parsing stay in
services/api. - contracts: client consumes generated/mapped contracts; protobuf source stays in
packages/contracts. - operations:
bin/test,bin/lint, andbin/buildrun client checks from the workspace root.
금지 사항
- Do not place backend service code or Go module files under
apps/client. - Do not hand-edit platform generated files unless the Flutter platform integration explicitly requires it.
- Do not hard-code production endpoint assumptions in presentation widgets.