Skip to content

An application for getting the characters of the Marvel Universe by API and displaying with infinite scroll.

Notifications You must be signed in to change notification settings

Artem-Tomilo/Marvel-characters

Repository files navigation

Marvel-characters

Приложение для отображения персонажей вселенной 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.

Также можно добавить персонажей в избранное, просмотреть их можно на экране Аккаунт (если их нет, будет отображен всплывающий алерт). При нажатии на персонажа также можно перейти на экран с его деталями. Внизу экрана добавлена кнопка выхода из профиля, которая отправит пользователя на экран входа.

В случае ошибки получения персонажей или комиксов пользователь будет уведомлен об этом путем получения алерта: