Project Url: arturbosch/detekt
Introduction: Static code analysis for Kotlin
More: Author   ReportBugs   

Join the chat at Visit the website at build status build status windows Download gradle plugin

All Contributors Awesome Kotlin Badge

Meet detekt, a static code analysis tool for the Kotlin programming language. It operates on the abstract syntax tree provided by the Kotlin compiler.

detekt in action


  • code smell analysis for your kotlin projects
  • complexity report based on logical lines of code, McCabe complexity and amount of code smells
  • highly configurable (rule set or rule level)
  • suppress findings with Kotlin's @Suppress and Java's @SuppressWarnings annotations
  • specify code smell thresholds to break your build or print a warning
  • code Smell baseline and ignore lists for legacy projects
  • gradle plugin for code analysis via Gradle builds
  • gradle tasks to use local intellij distribution for formatting and inspecting kotlin code
  • optionally configure detekt for each sub module by using profiles (gradle-plugin)
  • sonarqube integration
  • extensible by own rule sets and FileProcessListener's
  • intellij integration
  • unofficial maven plugin by the user Ozsie

Project Website

Visit for installation guides, rule descriptions and configuration options.

Quick Start ...

with command-line interface

  • git clone
  • cd detekt
  • ./gradlew build shadowJar
  • java -jar detekt-cli/build/libs/detekt-cli-[version]-all.jar --help

with gradle

buildscript {
    repositories {

plugins {
    id "io.gitlab.arturbosch.detekt" version "1.0.0.[version]"

detekt {
    version = "1.0.0.[version]"
    defaultProfile {
        input = file("src/main/kotlin")
        filters = ".*/resources/.*,.*/build/.*"


If you contributed to detekt but your name is not in the list, please feel free to add yourself to it!



As mentioned in...



Support Me
About Me
Google+: Trinea trinea
GitHub: Trinea