Skip to content

A News App developed using dagger2 - rxjava2 - paging - retrofit2 - room database - navigation component - data binding and Livedata & ViewModel

Notifications You must be signed in to change notification settings

MhmdAwad/NewsApp

Repository files navigation

NewsApp

A News App developed get the latest and best news from newsapi.org API.

Architecture

MVVM is pretty good in such cases. It goes one step further in separating the responsibilities of your code base. It clearly abstracts the logic of the actions that can be performed in the app.

Built With

  • Java : A programming language for Android development.
  • RXJava: A library for composing asynchronous and event-based programs by using observable sequences.
  • Dagger 2 : A fast dependency injector for Java and Android..
  • Retrofit : A type-safe HTTP client for Android and Java.
  • LiveData : Data objects that notify views when the underlying database changes.
  • ViewModel : Stores UI-related data that isn't destroyed on UI changes.
  • Room Database : Access your app's SQLite database with in-app objects and compile-time checks.
  • Navigation Components: Allow to navigate across, into, and back out from the different pieces of contents.
  • Glide : A fast and efficient open source media management and image loading framework for Android
  • LeakCanary:A memory leak detection library for Android.
  • Paging: The Paging Library helps you load and display small chunks of data at a time. Loading partial data on demand reduces usage of network bandwidth and system resources.
  • Facebook Shimmer: Shimmer is an Android library that provides an easy way to add a shimmer effect to any view in your Android app.

Preview

IMAGE ALT TEXT HERE

Screens