/coinme-news

The Coinme technical interview challenge.

Primary LanguageKotlin

Coinme Technical Interview Project

This repository contains the Coinme technical interview project for Android. This application allows users to search for news articles, view article details, and open articles. Articles are opened within a WebView. news articles are provided using https://newsapi.org/.

Architecture

This application follows the MVVM (model-view-viewmodel) architectural pattern. This architecture was used because it's the application architecture recommened by Google.

This application also follows the single-activity architecture and uses the JetPack Navigation Component library by Google.

Dependencies within the application are provided using the Dagger dependency injection framework.

Fragments subscribe to state changes using flows contained within view models.

The architectural layers that exist in the application:

  • Activity/Fragment
  • View Models
  • Repositories
  • Clients

Notes

  • It's possible for the developer API keys to reach their request limits. Should this occur please update the key within NewsDataModule.kt

Screenshots

The below screenshots show the entirety of the application: