WIP: feat(ui): Migrate to new UI implementation
This commit is contained in:
@@ -17,6 +17,9 @@ Important areas:
|
||||
- `lib/app` contains UI screens, BLoC state, widgets, and theme code.
|
||||
- `lib/app/widgets` contains shared app-level UI such as the custom desktop
|
||||
title bar.
|
||||
- `lib/app/design_system` contains presentation-only catalog components.
|
||||
- `widgetbook/` is the standalone component-catalog workspace. Stories and
|
||||
fixture data stay in that workspace and import components from the launcher.
|
||||
- `lib/features/launcher/domain` contains launcher entities such as sessions,
|
||||
manifests, news items, sync status, and exceptions.
|
||||
- `lib/features/launcher/application` contains use cases for session restore
|
||||
@@ -32,26 +35,28 @@ Important areas:
|
||||
|
||||
## Flutter SDK Policy
|
||||
|
||||
MoonWell Launcher supports the latest stable Flutter SDK only. Do not introduce
|
||||
or rely on FVM-pinned workflows.
|
||||
|
||||
If `flutter` is not available after installing or updating Flutter, restart the
|
||||
shell and verify PATH with `flutter --version`.
|
||||
MoonWell Launcher tracks the latest stable Flutter SDK through FVM. Run all
|
||||
Dart and Flutter commands through `fvm` and keep `.fvmrc` on the stable channel.
|
||||
|
||||
## Common Commands
|
||||
|
||||
```powershell
|
||||
flutter pub get
|
||||
dart run build_runner build --delete-conflicting-outputs
|
||||
dart format --set-exit-if-changed .
|
||||
flutter analyze
|
||||
flutter test
|
||||
flutter run -d windows --dart-define=MOONWELL_API_BASE_URL=https://host --dart-define=MOONWELL_APPCAST_URL=https://host/launcher/updates/appcast.xml
|
||||
flutter build windows --dart-define=MOONWELL_API_BASE_URL=https://host --dart-define=MOONWELL_APPCAST_URL=https://host/launcher/updates/appcast.xml
|
||||
fvm flutter pub get
|
||||
fvm dart run build_runner build --delete-conflicting-outputs
|
||||
fvm dart format --set-exit-if-changed .
|
||||
fvm flutter analyze
|
||||
fvm flutter test
|
||||
fvm flutter run -d windows --dart-define=MOONWELL_API_BASE_URL=https://host --dart-define=MOONWELL_APPCAST_URL=https://host/launcher/updates/appcast.xml
|
||||
fvm flutter build windows --dart-define=MOONWELL_API_BASE_URL=https://host --dart-define=MOONWELL_APPCAST_URL=https://host/launcher/updates/appcast.xml
|
||||
cd widgetbook
|
||||
fvm flutter pub get
|
||||
fvm dart run build_runner build
|
||||
fvm flutter run -d windows
|
||||
```
|
||||
|
||||
See `docs/linting.md` for the required format, analyze, test, and Lefthook
|
||||
pre-commit workflow.
|
||||
Follow `docs/widgetbook.md` for all Widgetbook use-case generation.
|
||||
|
||||
## Configuration
|
||||
|
||||
@@ -102,3 +107,5 @@ or local-only API URLs.
|
||||
- Always keep `README.md` and files under `docs/` up-to-date with any
|
||||
architecture, setup, API, sync, build, or operational change.
|
||||
- Keep documentation links current when files move.
|
||||
- Keep catalog widgets presentation-only. Do not call BLoCs, APIs, storage,
|
||||
file pickers, dependency injection, or native window plugins from them.
|
||||
|
||||
Reference in New Issue
Block a user