Skip to main content

The GDS Way and its content is intended for internal use by the GDS Product Group community.

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 .