Приложение для отображения персонажей вселенной Marvel с бесконечной прокруткой, аутентификацией через Firebase Auth и хранением информации в FirebaseFirestore.
Основной испльзуемый стек: UIKit, Firebase, Navigation Controller, UICollectionView, UITableView, custom views+tableViewCells.
Используемые библеотеки: SnapKit, Alamofire, SDWebImage.
Проект написан на MVP.
Приложение загружается на экране входа, который реализован с помощью Firebase Auth, войти можно по email + password или через google аккаунт. Также создан экран регистрации, при неправильности ввода каких-либо данных пользователь будет уведомлен об этом через всплывающий алерт.
После входа, приложение получает по API персонажей вселенной Marvel и отображает их в CollectionView. Изначально происходит загрузка первых 10 персонажей, после пролистывания вниз осуществляется повторная загрузка следующих 10, во время загрузки отображается CollectionReusableView с ActivityIndicator внутри. При нажатии на персонажа осуществляется переход на экран с его изображением, именем, описанием и комиксами. Экран деталей персонажа реализован с помощью TableView, комиксы - CollectionView внутри ячейки TableView.
Также можно добавить персонажей в избранное, просмотреть их можно на экране Аккаунт (если их нет, будет отображен всплывающий алерт). При нажатии на персонажа также можно перейти на экран с его деталями. Внизу экрана добавлена кнопка выхода из профиля, которая отправит пользователя на экран входа.
В случае ошибки получения персонажей или комиксов пользователь будет уведомлен об этом путем получения алерта: