news-app

Тестовое задание:"Новостное приложение"

Поиск происходит по нажатию на значок лупы, чтобы не отменять и не слать запросы, пока пишешь текст. При пустом посике возвращается к загрузке по дате. При скролле по дате вниз подгружает предыдущие дни.

Preview https://drive.google.com/file/d/1BYShHdBB59sMSVYuAeG15ANB1LggrrO6/view?usp=sharing

Требования:

  1. Стек: Kotlin, MVVM + Interactor + Repository, SingleActivity (Одна главная Activity, остальные экраны на Fragment), RxJava 2, Room, Retrofit. Остальное по желанию.

  2. UI постараться сделать чистым, согласно гайдам. Что-то сложное и затратное по времени делать не требуется.

  3. Использовать любое публичное новостное API, которое предоставляет данные с помощью JSON.

  4. Будет плюсом, если в приложение добавите WebView, Bottom navigation. Данный функционал дополнительный, всё на Ваше усмотрение.

  5. Фичи:

  1. Splash screen
    +Экран должен содержать лого, в центре экрана. Любая картинка, на Ваше усмотрение.\

  2. Wizard (экран с инструкцией для пользователя).
    +Экран должен содержать 2-3 этапа. Любой текст, можно с картинками.
    +Можно переходить с первого этапа до последнего и обратно. Можно закрыть экран и перейти на Главный экран на любом этапе.
    +Экран отображается только при первом запуске.\

  3. Main (главный экран)
    +Экран должен содержать список новостей +Фильтр. К примеру, по дате или по тексту (к примеру, по названию новости).

  4. Detail (детальная страница новости)
    +Экран должен содержать заголовок новости и описание.
    +Кнопка назад.\

  5. Приложение должно работать offline. DB - Room