Skip to content

Chinex-Boroja/News9ja

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

69 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Clean-MVVM-NewsApp called News9ja

An Android application built using MVVM architecture.

Components used in the app.

  • Kotlin - As a programming language.
  • LiveData - Lifecycle aware Observable data holder class.
  • ViewModel - To manage the UI-related data in a lifecycle conscious way.
  • Coroutines - Used for data manipulations and to switch between main thread and worker thread.
  • Retrofit - For making network calls.
  • Navigation Component - Navigation occurs between your app's destinations—that is, anywhere in your app to which users can navigate.
  • Room database - To cache the response for offline access.
  • Glide - Glide supports fetching, decoding, and displaying video stills, images, and animated GIFs.

Description

News9ja is an app which brings the latest news from Google news. Internally app uses News API to fetch the details. This app is built using Clean + MVVM architecture, uses Retrofit2 for making API calls and uses Room database to cache the data. It uses Modern Android Development (Architecture Components, MVVM, Kotlin, Coroutines, Retrofit, Room, Glide) and Room DB you can add a news or delete it from locale storage.

Architecture

Architecture

Screenshots

NewsApp NewsApp NewsApp

Steps to build the app

  • Create your API key at News API
  • Add the generated API key in ~/utils/Constants.kt like below
    const val API_KEY = ""
  • Build and run the app.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages