tokou / detekt

Static code analysis for Kotlin

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

detekt

Join the chat at https://kotlinlang.slack.com/messages/C88E12QH4/convo/C0BQ5GZ0S-1511956674.000289/ Visit the website at https://arturbosch.github.io/detekt/ 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

Features

  • 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 https://arturbosch.github.io/detekt/ for installation guides, rule descriptions and configuration options.

Quick Start ...

with command-line interface

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

with gradle

buildscript {
    repositories {
        jcenter()
    }
}

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/.*"
    }
}

Contributors

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

Mentions

androidweekly androidweekly

As mentioned in...

Integrations:

Credits

About

Static code analysis for Kotlin

License:Apache License 2.0


Languages

Language:Kotlin 98.3%Language:Java 1.1%Language:Groovy 0.4%Language:HTML 0.1%Language:Shell 0.1%