Isuru Rajapakse is an Android/Web Developer at Motorola Solutions based in Melbourne, specialising in creating mobility solutions for public safety. With over 8 years of experience in mobile application and web development - Isuru has won a number of awards for his software projects, including the winner of WSA-mobile in 2015, Oracle's Thinkquest in 2011, APICTA in 2012 and many others.
Publishing a Kotlin multiplatform library can be very challenging. This presentation will walk through the whole process from drafting a concept to the publication of your first multiplatform library.
We will be using KStore - a minimal multiplatform library to store objects to disk - as a case study for this presentation. We will explore how it was originally inspired, the original goals and how its API evolved over time to support multiple platforms.
A key goal of this side-project was to make it self-managed as much as possible with minimal overhead so that the open-source community can extend or maintain the library even in my absence. To achieve this I've incorporated a number of tools to upkeep standards from code contributions - tools such as Klover code coverage and binary-compatibility-validator. I've also used a number of automation tools to streamline the process of publishing a multiplatform library - tools such as GitHub actions build matrices to build and test on multiple platforms.