Skip to content

Latest commit

 

History

History
38 lines (32 loc) · 1.88 KB

README.md

File metadata and controls

38 lines (32 loc) · 1.88 KB

Youtube Android Clone 🚀

This app consumes The Youtube Api to fetch and display a list of popular videos, The app uses MVVM design pattern to allow separation of the app components like fragments & activities from the data logic, some of the benefits are:

  • Make the data survive device configuration changes
  • Allow easier testing of different components in the app
  • Also it's easier to maintain and scale the app over time

Prerequisite

  • To run the app successfully you need to create your own Google API KEY
  • Navigate to the com.breens.youtubeclone.util.Constants.kt file and put your own api key const val KEY = "PUT YOUR OWN GOOGLE API KEY"
  • Here is the link to generate your Google API KEY

Screenshots

Splash/Home Screens

Demo

YTCLONEDEMO.mp4

Libraries

  • Navigation Components - To implement the Single Activity approach since fragments are lightweight than activities and allows easy passing of data between arguments in a type safe way
  • Retrofit - A Type-safe HTTP client for Android which simplifies consuming RESTFul APIs.
  • GsonConverter - Converts JSON to Kotlin objects.
  • OkHttp-logging-interceptor - Makes it easy to log OkHttp network responses and requests
  • Coil - Image loading library for android
  • Dagger Hilt - Used for Dependency Injection
  • View Binding - Jetpack library allowing type safe binding of views
  • Livedata - Notifies Observer objects in the UI when underlying data changes.

Author Info

License

MIT