Revamp, tiny and opinionated MVP framework

Revamp, tiny and opinionated MVP framework

I noticed I never talked here (or anywhere for that matter) about my take on MVP, called revamp, that I started coding/using almost 2 years ago.  

It is a tiny framework that has been pivotal on the development of my personal apps.

It comes with a couple of goodies that have proven to be pretty useful:

  • Presenters on Activities and Fragments are persisted across rotations, and expose methods to retain whatever else you want in those situations.
  • ViewComponents (MVP's Views) get attached on onCreate and detached on onDestroy, thus providing a longer lifecycle compared to other libraries that do that on onStart/onResume.
  • It doesn't force you to handle lifecycle events in the Presenter (yuck).
  • ViewComponents, when not attached, are provided with an empty implementation, so there are no unwanted NPEs when the presenter invokes something on the view in the middle of a rotation or in unwanted moments.

I have been using it in production for a while, and keep improving from time to time. Feel free to give it a try!