Pop Flix

PopFlix is a gorgeous client application for TMDb on Android, built using Kotlin.

Architecture and Tech-stack

  • Built on MVVM architecture pattern
  • Uses Android Architecture Components, specifically ViewModel, LiveData and Room.
  • Has a clean, gorgeous user interface with pretty animations, built using Android Transitions framework, and Material Components for Android
  • Heavily uses RxJava for network calls, transformations, and database observation.
  • Completely offline ready. MovieDB uses Room for managing a local SQLite database, which means that if you have seen some content already while you were online, you won’t need an internet connection to see it again. Everything except movie trailers are cached.
  • Uses Retrofit for making API calls.
  • Uses Glide for image loading.
  • Built on a Single-Activity Architecture. Every screen in the app is a fragment.


  • Discover Top Rated and Popular movies on TMDb.
  • Search for movies (TODO)
  • View movie details like release date, rating, overview, movie trailer and cast right inside the app.
  • Works offline by caching data into a database.
  • Supports dark mode.