Detekt 3rd-party Marketplace
List of Detekt Rules, Extensions & Plugins that have been built by the community.
🙏 Please add your rulesetFind more on GitHubAll extensions
- https://github.com/BraisGabin/detekt-compiler-rules
A ruleset that wraps the warnings and info messages of the Kotlin compiler as detekt findings..
Rules
Uses type resolution: true
CompilerInfo
CompilerWarning
- https://github.com/appKODE/detekt-rules-compose
A set of detekt rules to help prevent common errors in projects using Jetpack Compose.
Rules
Uses type resolution: false
ComposableEventParameterNaming
ComposableParametersOrdering
ComposeFunctionName
MissingModifierDefaultValue
ModifierDefaultValue
ModifierHeightWithText
ModifierParameterPosition
PublicComposablePreview
ReusedModifierInstance
TopLevelComposableFunctions
UnnecessaryEventHandlerParameter
- https://twitter.github.io/compose-rules/
Static checks to aid with a healthy adoption of Jetpack Compose.
Rules
Uses type resolution: false
ComposableNaming
ComposableParamOrder
CompositionLocalAllowlist
CompositionLocalNaming
ContentEmitterReturningValues
ModifierComposable
ModifierMissing
ModifierReused
ModifierWithoutDefault
MultipleEmitters
MutableParams
PreviewNaming
PreviewPublic
RememberMissing
UnstableCollections
ViewModelForwarding
ViewModelInjection
- https://detekt.dev/docs/next/rules/ruleauthors
The rule authors ruleset provides rules that ensures good practices when writing detekt rules.
Rules
Uses type resolution: true
UseEntityAtName
ViolatesTypeResolutionRequirements
- https://github.com/Doist/detekt-rules
This repository contains custom detekt rules based on Doist internal coding conventions.
Rules
Uses type resolution: false
ConsistentWhenEntries
MutableObservablePropertyIsPrivate
NoBlankNewLineAfterClassHeader
NoNotNullOperator
SingleLineWhenEntryExpressionsAreWrapped
TodoPattern
- https://gitlab.com/cromefire/detekt-gitlab-report
A reporter to export detekt findings to GitLab Code Quality (and other code climate compatible tools). This is designed for use with GitLab, but should also work fine with everything else that accepts the code climate format.
- https://mkohm.github.io/detekt-hint/
A ruleset to implement detection of violation of programming principles. detekt-hint offers also instructions on how to integrate with Danger and GitHub Actions
Rules
Uses type resolution: true
InterfaceSegregationPrinciple
LackOfCohesionMethods
OpenClosedPrinciple
UseCompositionInsteadOfInheritance
- https://detekt.dev/docs/next/rules/formatting
This rule set provides wrappers for rules implemented by ktlint.
Rules
Uses type resolution: false
AnnotationOnSeparateLine
AnnotationSpacing
ArgumentListWrapping
BlockCommentInitialStarAlignment
ChainWrapping
CommentSpacing
CommentWrapping
DiscouragedCommentLocation
EnumEntryNameCase
Filename
FinalNewline
FunKeywordSpacing
FunctionReturnTypeSpacing
FunctionSignature
FunctionStartOfBodySpacing
FunctionTypeReferenceSpacing
ImportOrdering
Indentation
KdocWrapping
MaximumLineLength
ModifierListSpacing
ModifierOrdering
MultiLineIfElse
NoBlankLineBeforeRbrace
NoBlankLinesInChainedMethodCalls
NoConsecutiveBlankLines
NoEmptyClassBody
NoEmptyFirstLineInMethodBlock
NoLineBreakAfterElse
NoLineBreakBeforeAssignment
NoMultipleSpaces
NoSemicolons
NoTrailingSpaces
NoUnitReturn
NoUnusedImports
NoWildcardImports
NullableTypeSpacing
PackageName
ParameterListSpacing
ParameterListWrapping
SpacingAroundAngleBrackets
SpacingAroundColon
SpacingAroundComma
SpacingAroundCurly
SpacingAroundDot
SpacingAroundDoubleColon
SpacingAroundKeyword
SpacingAroundOperators
SpacingAroundParens
SpacingAroundRangeOperator
SpacingAroundUnaryOperator
SpacingBetweenDeclarationsWithAnnotations
SpacingBetweenDeclarationsWithComments
SpacingBetweenFunctionNameAndOpeningParenthesis
StringTemplate
TrailingCommaOnCallSite
TrailingCommaOnDeclarationSite
TypeArgumentListSpacing
TypeParameterListSpacing
UnnecessaryParenthesesBeforeTrailingLambda
Wrapping
- https://github.com/neeffect/kure-potlin
The purpose of this ruleset for functional programming is to report the potential use of impure language elements in kotlin code.
Rules
Uses type resolution: true
AbstractClassDefinition
BranchStatement
ClassDefinition
LoopDefinition
MissingElse
MutableCollections
ReturnStatement
ReturnUnit
ThrowExpression
VariableDefinition
- https://detekt.dev/docs/next/rules/libraries
Rules in this rule set report issues related to libraries API exposure.
Rules
Uses type resolution: true
ForbiddenPublicDataClass
LibraryCodeMustSpecifyReturnType
LibraryEntitiesShouldNotBePublic
- https://github.com/colematthew4/detekt-operator
Rules to prefer expressions over named functions for kotlin operators.
Rules
Uses type resolution: false
PreferArithmeticSymbolSyntax
PreferBracketAccessorOverFunctionSyntax
PreferInOverContainsSyntax
PreferUnaryPrefixOverFunctionSyntax
PreferUnaryPostfixOverFunctionSyntax
- https://github.com/cph-cachet/detekt-verify-implementation
A ruleset which enables verifying whether concrete classes are implemented as specified according to annotations applied to base types.
Rules
Uses type resolution: true
DataClass
Immutable
Unpublished community resources
List of Detekt Rules, Extensions that may be hidden from sight.
- ruleset
- processor
- reporter
- configvalidator
- plugin