Skip to content

Written in Kotlin, its a random proggraming quotes application which include clean architecture, retrofit, rxjava, MVVM and dagger 2 implementation. It takes all sensitive information through gradle properties and then loads up in the bytecode after compiling it. It also handles offline scenario and error handling as well.

Notifications You must be signed in to change notification settings

shahwaiz90/Random-Quote-Generator-Android-App

Repository files navigation

Random-Quote-Generator-Android-App

This codebase was orignally created for saudi federation of cybersecurity programming and drones for an interview.

Its a random programing quotes application. It takes all sensitive information through gradle properties and then loads up in the class files after compiling it.

Flow of the app:

  • If internet available, hits the API and save the response in shared preference
  • If no internet available, shows data from shared preference. If that data is not present then shows place holder message.

Design Patterns and Libraries Used:

  • Clean Architecture (SOLID Principles, Seperation of concerns, Easy Testing)
  • MVVM
  • Retrofit2
  • Kotlin
  • Dagger2
  • RxJava
  • Online/ Offline and error handling Scenarios (Using Shared preference by storing json object in it)
  • Separate module (networkSdk) for modularity purpose

Architecture Diagram Followed

Architecture followed

Offline and Online Scenarios respectively

Offline Scenario Onine Scenario

About

Written in Kotlin, its a random proggraming quotes application which include clean architecture, retrofit, rxjava, MVVM and dagger 2 implementation. It takes all sensitive information through gradle properties and then loads up in the bytecode after compiling it. It also handles offline scenario and error handling as well.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages