Motivation#

As Go codebases grow, complexity often hides in deeply nested logic rather than raw line count. Traditional linters catch syntax and style issues but rarely highlight mental load.

go-strict was built to quantify cognitive complexity so teams can reason about readability early—before code becomes difficult to maintain or review.

Results#

The linter analyzes function control flow, nesting, and branching to produce a clear complexity score with file and line references. Output formats are configurable, making it easy to integrate into CI pipelines.

By surfacing complexity explicitly, go-strict encourages intentional design decisions and reinforces clean code practices across Go projects.