Flutter to-do application for yandex summer school of mobile development.
Project uses freezed and hive, to generate items use command:
fvm flutter packages pub run build_runner build --delete-conflicting-outputs
download apk DEV download apk PROD
dev flavor prod flavor
fvm flutter run --target lib/main_dev.dart --flavor=dev --dart-define URL=$url --dart-define token=$token fvm flutter run --target lib/main_prod.dart --flavor=prod --dart-define URL=$url --dart-define token=$token
sh build_apk_release.sh
Android adb shell 'am start -a android.intent.action.VIEW -c android.intent.category.BROWSABLE -d "https://beta.mrdekk.ru/detail"' com.example.ya_todo_app
IOS xcrun simctl openurl booted mrdekk://beta.mrdekk.ru/detail
fvm flutter test integration_tests/crud_todo_test.dart --flavor=dev --dart-define URL={$URL} --dart-define token={$token}
- CRUD with TODO
- swipes for mark todo done or delete
- light and dark themes
- filter on list of todos. show all or only not completed
- todo local storage
- navigator 2.0
- api
- deeplink on create todo screen
- unit tests
- integration test on CRUD flow
- intl
- CI with GitHub actions (format, analyze, test, build)
- Firebase crashlytics
- Firebase analytics
- Firebase remoteconfig runtime update
- portrait and landscape orientation
- tablet support
- dio (network calls)
- freezed (data classes)
- hive_flutter (local data provider)
- hooks_riverpod (State Management)