NimbusMind NimbusMind номинация

Сон и Медитация: NimbusMind

о заказчике
Ребята пришли к нам с идеей сделать конкурента HeadSpace который на тот момент был уже очень популярным приложением. Уже была готова часть контента и нужно было начинать работу. Нам идея очень понравилась, плюс у заказчика уже были эскизы, сделанные очень качественно.
Дано
1. Mp3 записи с англоязычным нарратором
2. Эскизы приложения для iOS
3. API для авторизации пользователей
ВЫбор технологий
Первоначальное предложение было организовать работу бэкенда через Google Firebase используя Realtime Database, модули авторизации и хранилище. К тому моменту (середина 2017 года) мы уже сделали много приложений на этой связке и были уверены в решении. Заказчику предложение понравилось, но на других проектах (Nimbus Note) он активно использовал AWS и было предложено рассмотреть его как альтернативу. С AWS мы были знакомы, но потребовалось дополнительное время чтобы получить рабочую схему.
В итоге получилась следующая картина:
1. Авторизация через Cognito. Заказчику потребовалось доработать API и интегрировать сервер с AWS для проверки токенов.
2. Хранение метаданных - DynamoDB
3. Хранение файлов - S3
IOS
На стороне iOS приложения была выбрана архитектура MVVM на swift + ReactiveCocoa ( тогда еще не было разделения на ReactiveSwift и ReactiveCocoa). Для работы с таблицами было решено выбрать проверенный временем TableKit.
В проекте есть несколько интересных UI решений:
Скрывающийся UINavigationBar c Pager контролом заимствованным в Android ;
Прилипающая к UINavigationBar копка в списке эпизодов серии ;
Видео подложка под экраном плеера .
ANDROID

В Андроид было выбрано MVP + Observer, для оффлайн было использовано новую на то время разработки базу данных Room от Google. Также поскольку одной из главных фич программы был дизайн и анимации, было решено использовать View Transition Api.

Также использовали JavaRx - без этой библиотеки было бы сложно реализовать обработку данных с разных провайдеров ( cognito, dynamoDb, локальная БД, сервер авторизации и т.д., всего 9! )

Приложение постоянно фичерится эппл.

NimbusMind номинация
Результат
Иван Иванов
Павел Щербаков
Вместе с коллегами из InstaDev мы формируем продуктовые гипотезы, и развиваем продукт.
Благодаря нашей совместной работе приложение NimbusMind получило 3-е место среди мобильных приложений в номинации “Творчество, хобби и обучение” одной из престижных всероссийских премий “Рейтинг Рунета”.