Skip to content

✅FULLY FUNCTIONING . Flutter + dio + floor + firebase

Notifications You must be signed in to change notification settings

ChaserVasya/todo

Repository files navigation

Список дел

  • cсылка на реквест для проверки: #1
  • апк рассылается через Firebase App Distribution

Комментарии

Паддинги, размеры, скругления не вынесены в константы, т.к. по всему дизайну одни и те же смысловые паддинги и скругления имеют разную величину, что является претензией к дизайнеру и требует пересогласования. До тех пор стандартизация данных констант бесмысленна и приведёт к их многократному перекраиванию.

Синхронизация происходит только при перезапуске приложения (в тз также).

Проверка дз 4

Из того, что следует отметить во избежание недопониманий

  • Если не вставляете свои токены, запускайте main_test. В нём используется моковое хранилище
  • Разное
    • Заметки обрезаются если больше 5 строк
    • Есть анимации редактирования, удаления (свайп карточек)
    • Для проверки разных тем используйте плавающую кнопку смены темы
    • лендскейп поддержка реализована в виде отсутстия недоступных элементов лендскейпе
    • Большие экраны можете проверить через билд для веба
  • Firebase. Киньте мне свои почты. Добавлю в Firebase. Можете поменять Remote Config и отслеживать Analytics и Craslytics
    • Крашлитику проверьте нажимая в приложении на кнопку crash
  • Build & Release.
    • флейворы. для разных флейворов разное имя приложения
    • CI/CD можете отслеживать в Github Проекта
    • Распространение через Firebase App Distribution. Добавлю в тестеры.

Проверка дз 3

диплинк добавления задания adb shell 'am start -W -a android.intent.action.VIEW -d "todo://example.com/edit"'

для запуска интеграционного теста раскоментьте тестовый _Env в env.dart и закоментьте part 'env.g.dart';

Реализованные фичи

  • есть иконка
  • есть логгирование
  • есть локализация с помощью intl + Flutter intl плагин для AS
  • применяется flutter-lints
  • встроены дип-линки
  • есть синхронизация данных с бэком при старте приложения

Слои

Слои сделаны по принципу layer-first.

  • data-слой содержит
    • локальные бд в storages
    • удалённые бд в services
    • вспомогательные утилиты в services
  • domain-слой содержит абстракции
  • application-слой содержит "точки связи", вроде, MaterialApp, di, globals.
  • presentation-слой содержит содержит блоки и вёрстку.

Реализованная логика

  • удаление Todo
  • создание Todo
  • удаление и выполнение Todo по свайпу влево\вправо
  • редактирование Todo
  • фильтрация Todo по выполненности

Реализованные тесты

  • просто тесты
    • реализован тест репозитория ревизии
    • реализован тест репозитория для работы с бэком
    • реализован тест парсера дип-линков
  • реализован интеграционный тест добавления задания.

Скриншоты

Screenshot_20230616_082027 Screenshot_20230616_082056 Screenshot_20230616_082213 Screenshot_20230616_082408 Screenshot_20230616_082419

About

✅FULLY FUNCTIONING . Flutter + dio + floor + firebase

Resources

Stars

Watchers

Forks

Packages

No packages published