Photo Filter App built with Kotlin


This Android app allows users to easily add filters to photos. Users can select their photos through the app and choose from a variety of filters. You can set the filters via the api. Users can also adjust the filters of their choice and increase or decrease the filter effect. The app allows users to save and share their filtered photos. This app is ideal for those who are interested in photo editing.

API Information

Fetch All Overlays


Development Environment

  • Android Studio: Dolphin or Higher
  • Language: Kotlin
  • Build System: Gradle


  • Clean Architecture + Model View Model Model Pattern + Repository Pattern.
  • Jetpack Libraries and Architecture Component
  • Refrofit2, OKHTTP3 and Gson
  • RxJava2
  • Offline Persistence (Room Database)
  • Coil
  • CustomView, Recyclerview
  • Lifecycle
  • Navigation Component
  • File operations (Save image)
  • Rotation Support
  • Github for CI


  • Data Binding
  • Live Data
  • Navigation
  • Dagger2
  • Rxjava2
  • Room
  • Coil
  • Refrofit2
  • Lifecycle

Other Features

  • Custom view that draws given bitmap and selected overlay bitmap.
  • Custom view extend View class.
  • Drag overlay bitmap with one finger touch. Used GestureDetector.SimpleOnGestureListener
  • Implement pinch zoom to overlay bitmap. Used ScaleGestureDetector.SimpleOnScaleGestureListener
  • Save Image. When click to the save icon, Save drawn bitmap as JPG to the external.


User InterfaceCustomView/RecyclerviewDrag Overlay
Pinch ZoomSave Image


View Github

Leave a Reply

Your email address will not be published. Required fields are marked *