Flutter client for Alexandria (iOS/Android/Web)
| .forgejo/workflows | ||
| .vscode | ||
| android | ||
| assets | ||
| ios | ||
| lib | ||
| linux | ||
| macos | ||
| scripts | ||
| test | ||
| web | ||
| windows | ||
| .editorconfig | ||
| .gitignore | ||
| .metadata | ||
| analysis_options.yaml | ||
| devtools_options.yaml | ||
| flutter_launcher_icons.yaml | ||
| LICENSE.md | ||
| pubspec.lock | ||
| pubspec.yaml | ||
| README.md | ||
seshat
Client android/iOS/web, écrit en dart x flutter, pour Alexandria.
Developpment
UI
Three types of files :
*.page.dart: main display of a page*.vm.dart: view model associated with a page*.wdgt.dart: widgets, either projet wide or associated with a specific page
All .page. should be kept as explicit as possible : use widgets where possible, but don't just move all the crap to another widget.
'Backend' of the frontend
The Source of Truth for data are the data/repository/*.repo.dart, the repositories.
All calls to external API are made by data/api/*.api.dart.
Data types are defined by domain/*.type.dart.
Routing
go_router and provider are used to provide everything, through both config/dependencies and routing/.