Skip to content

mohdaquib/NewsApp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Jetpack Compose NewsApp

A news app which retrieves the news data from News API with Jepack Compose, Coroutines, Flow, Dagger, Paging 3 and MVVM architecture.

App Architecture

Architecture Layers of the project

  • Compose Screen
  • ViewModel
  • Repository

About me

Hi, I am [Mohd Aquib], I am a self-motivated guy and enjoy solving complex problems. I am also open-source enthusiast. I really like reading and writing good quality code.

You can connect with me on:

Major Libraries used in this project

  • Jetpack Compose: Jetpack Compose is a declarative framework for creating UI in Android.
  • Retrofit: Retrofit is a type-safe HTTP client for Android and JVM.
  • Dagger: Dagger is a compile-time framework for dependency injection.
  • Compose Navigation: This library provides support for navigation between composables.
  • OkHttp: It is an Http client for Android and JVM.
  • Glide Compose: It is a compose supported version of glide library for loading images asynchronously.
  • Paging Compose: It is a paging library compatible with Jetpack Compose.
  • Room: It is built on top of Sqlite and provides efficient way to access local database for offline support.
  • Mockk: It is a fully kotlin based mocking library used for unit testing.
  • Turbine: It is used for unit testing the Kotlin Flow.

Paging flow with Remote Mediator for Offline Support

Paging Flow

How to run this project?

# Move to your workspace
cd your-workspace

# Clone this project into your workspace
git clone https://github.com/mohdaquib/NewsApp.git

# Move to the project root directory
cd go-backend-clean-architecture

Android Studio Version

  • This project is using Android Studio Dolphin | 2021.3.1 Patch 1 version

How to run the test?

# Run all tests
gradlew test

TODO

  • Improvement based on feedback.
  • Add Integration and UI tests.
  • Always try to update with the latest version of the libraries used

About

This is a news app which retrieves the news data from News API. The UI of this app is implemented in Jetpack Compose

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages