Ссылка на ТЗ: https://docs.google.com/document/d/17qmmyyx9fh7Gy1jnyPQziLHQtMm3ODsLxMoEa2DZDPE/edit
https://drive.google.com/file/d/1-IBu-1wuVyRjSkl3TvMqgK3V3DmgiHq3/view?usp=sharing
- В приложении используется fake api, который представляет из себя файлы JSON. Мною получение данных выполнено с помощью пакета Dio и json_serializable. Репозитории и модели отделены от слоя UI, что помогает легко изменять данные, не касаясь слоя UI. Для моделей JSON применена кодогенерация.
- Все картинки, загружаются через пакеты, которые могут их кэшировать, что позволяет снизить поток данных из сети при каждом старте приложения. Если в JSON картинка "битая" приложение подменяет ее заглушкой.
- В качестве управления состояние применена связка Riverpod + Freezed.
- Используются как горизонтальные, так и вертикальные скролы, как части экрана так и всей страницы.
- Все экраны максимально распределены по виджетам, для удобства разработки и навигации в коде.
- Используются динамические списки (можно добавлять хоть сколько отелей, хоть сколько туристов).
- Используется валидация полей ввода, для номера телефона с маской.
flutter pub run build_runner build
spider_build