Introducing 9 Cards – an Open Source Android Launcher in Scala


9 Cards is an Open Source Android launcher built with Scala on Android and crafted for and by the Scala and Android Communities. Our challenge was to design a launcher that
takes advantage of the all of the functionalities and features provided by your phone
in order to make you more productive. Your phone use changes
throughout the day. That’s why 9 Cards shows widgets by Moments that are adapted to your daily routine. Whether it’s playing games at home, listening to music on your commute or checking your email at work. 9 Cards learns your habits and launches the apps you want when you want them The first goal for the 9 Cards Android App
was to bridge the gap between the Android SDK imperative nature and the more Functional Architecture approach that we wanted to follow. We’ve accomplished that by following some
common well known functional patterns with the support of great libraries from the Typelevel ecosystem such as Cats and Monix. The server backend, also written in Scala
provides the app with the functionalities needed for categorizing and ranking Android apps by popularity. It also leverages popular libraries and follows an FP style architecture similar to the one in the app. We’ve developed the services that the client uses in such a way that we’ve reduced our dependence on third-parties, such as the Google Play store API as much as possible. Our backend has used several modern functional
programming techniques, such as the Free monad, and we use many open-source libraries from
our friends in the Scala community, such as Typelevel’s Cats and Http4s. 9 Cards is a launcher made by developers for
developers. We’d like to take this opportunity to invite
you to try it out at 9cards.io and contribute new features and ideas in our Github repository. Thanks for watching!

3 thoughts on “Introducing 9 Cards – an Open Source Android Launcher in Scala

Leave a Reply

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