Skip to content

jadeleke/newsapp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

News

Simple news app to implement the mvvm architecture using the News API.

Technical stack

  • Room as persistance library
  • JUnit 5 as test library
  • RxAndroid An API for asynchronous programming with observable streams in android
  • RxJava An API for asynchronous programming with observable streams in Java
  • Retrofit for network request
  • Okhttp for application and network interception and others

Requirements

Getting started

  1. Clone the repo git clone https://... && cd ...

  2. Build with gradle

  3. Add api key and base url to local.properties file.

       app.api_key=<your-api-key>
       app.base_url="https://newsapi.org/v2/"
    
  4. Rebuild project

  5. Run

Testing

The testing relies on the default JUnit 5 framework and utilizes also some additional tools.

Unit tests

Implement unit tests to any pure function that does something critical to the UI. Testing reducer functions may be actually convenient and a faster way to verify they're working properly (instead of trial-and-error during development).