Новостной агрегатор, в возможность читать новости по 54 странам (на выбор) и возможностью поиска новостей по ключевому слову.
Это курсовой проект, где я участвовал в командной разработке.
Роль в проекте: Product owner / Product Manager / Developer (~78% of code).
Над чем работал я как разработчик:
- Участие в разработке и реализации UI и макетов всего проекта.
- Реализация ViewPager на главном экране с лентой новостей, для отображения новостей по категориям.
- Реализовал в проекте пагинацию всех списков приходящих с API.
- Экран с закладками (полностью) — логика и UI. Настроил БД с помощью Room и реализовал добавление и чтение из БД статей добавленных пользователем в любимые.
- Экран настроек (полностью) — логика и UI. Реализация выбора страны источника новостей, выбор и смена темы приложения и языка, с сохранениям в SharedPref. Информация о разработчиках и отправка интнента на почтовые приложения, для связи с разработчиком.
- Перевод приложения. Поддерживается 4 языка — русский, английский, немецкий, французский.
- Мной подключена и реализована рекламная медиация от Yandex.
- Подготовил и выложил релиз в магазин приложений RuStore. Приложение находится на стадии подготовки к размещению на Google Play.
По окончании курсовой, продолжаю работу над проектом самостоятельно, в качестве своего Pet-проекта. Большую часть работы выполнил уже один: довел до состояния законченного продукта, вывел в релиз и прикрутил монетизацию.
Стэк: Kotlin, MVVM + MVI, Clean Architecture, SOLID, Single Activity, Material.io, Retrofit2, Room, Coroutines, ViewPager2, Koin, Glide, SplashScreen, SwipeRefreshLayout, Yandex mobileAds.
Релиз на RuStore. Исходный код и Demo.