Kotlin style guide
We use Kotlin for Android development at GDS because it’s the recommended language for building Android apps (see Android’s Kotlin-first approach).
For use cases outside of mobile development, Java is still our default choice for the Java virtual machine (JVM).
As a result, this guide may lean towards Android-specific tools and conventions.
Code style and formatting
ktlint
We use ktlint for linting and code formatting. Its default rule set is based on the Kotlin coding conventions and the Android Kotlin style guide.
Static analysis
detekt
We use detekt for static code analysis. It can identify code smells, complexity issues, potential bugs and other problems.
This page was last reviewed on 25 March 2026.
It needs to be reviewed again on 25 September 2026
by the page owner #mobile-community
.
This page was set to be reviewed before 25 September 2026
by the page owner #mobile-community.
This might mean the content is out of date.