Riverpod + go_router с auth-guard, NavigationRail на широком экране и bottom bar на узком. Токены в flutter_secure_storage, на web access живёт в памяти. Интерцептор подставляет токен и делает ровно один refresh на 401. Деньги приходят строками и форматируются через Decimal: парсить их в double значило бы терять копейки ровно там, где бэкенд их бережёт.
32 lines
588 B
YAML
32 lines
588 B
YAML
name: fintracker_app
|
|
description: "fin-tracker client: personal finance + investment analytics."
|
|
publish_to: "none"
|
|
version: 0.1.0+1
|
|
|
|
environment:
|
|
sdk: ^3.13.3
|
|
|
|
dependencies:
|
|
flutter:
|
|
sdk: flutter
|
|
flutter_localizations:
|
|
sdk: flutter
|
|
fintracker_api:
|
|
path: packages/api_client
|
|
dio: ^5.7.0
|
|
flutter_riverpod: ^2.6.1
|
|
go_router: ^14.6.0
|
|
flutter_secure_storage: ^9.2.2
|
|
decimal: ^3.0.2
|
|
intl: ^0.20.2
|
|
fl_chart: ^0.69.0
|
|
shared_preferences: ^2.3.4
|
|
|
|
dev_dependencies:
|
|
flutter_test:
|
|
sdk: flutter
|
|
flutter_lints: ^6.0.0
|
|
|
|
flutter:
|
|
uses-material-design: true
|