Credo
credo.hexdocs.pm
Spec sheet
- Purpose
- Credo is a static code analysis tool for Elixir focused on code consistency and teaching.Read 9 Oct 2026 · credo.hexdocs.pm
- Integrations
- The maker lists integrations for IntelliJ, Atom, VS Code, Emacs, Kakoune, Neovim, and Codacy.Read 9 Oct 2026 · github.com
- License
- Credo is released under the MIT License.Read 9 Oct 2026 · github.com
- Analysis
- It suggests code changes and reports refactoring opportunities, complex code, common mistakes, naming inconsistencies, and style issues.Read 9 Oct 2026 · github.com
- Author
- The repository names René Föhring as the author.Read 9 Oct 2026 · github.com
- Checks
- Built-in checks cover consistency, design, readability, refactoring, and warnings, and low-priority checks can be included with strict analysis.Read 9 Oct 2026 · credo.hexdocs.pm
- CI usage
- Credo returns a nonzero exit status when it reports issues, supporting shell-based pipelines such as CI workflows.Read 9 Oct 2026 · credo.hexdocs.pm
- Compatibility
- Credo aims to stay compatible with the Elixir minor releases listed in the Elixir documentation, which it actively tests on CI.Read 9 Oct 2026 · credo.hexdocs.pm
- Configuration
- Credo uses a `.credo.exs` configuration file that can be placed in the project root or its `config/` folder.Read 9 Oct 2026 · credo.hexdocs.pm
- Custom checks
- Users can add project or domain specific checks by implementing the `Credo.Check` behavior and configuring the check.Read 9 Oct 2026 · credo.hexdocs.pm
- Installation
- The docs recommend adding Credo as a Mix dependency with `only: [:dev, :test]` and `runtime: false`.Read 9 Oct 2026 · credo.hexdocs.pm
- Issue explanations
- Users can request an explanation for an issue that includes the check, its configuration options, and how to disable it.Read 9 Oct 2026 · credo.hexdocs.pm
- Output
- Credo can output command results as JSON.Read 9 Oct 2026 · credo.hexdocs.pm
- Output formats
- The CLI supports Flycheck, JSON, and SARIF output formats.Read 9 Oct 2026 · credo.hexdocs.pm
- Plugins
- Plugins are modules enabled and configured through the `:plugins` field in `.credo.exs`.Read 9 Oct 2026 · credo.hexdocs.pm
- Publisher
- The Hex package lists `rrrene` as the package publisher and owner.Read 9 Oct 2026 · hex.pm
- Teaching
- For an issue, Credo can show the check that raised it, its configuration options, and how to disable it.Read 9 Oct 2026 · credo.hexdocs.pm
Plans and prices
Credo Free Open source Elixir static analysis tool Read 9 Oct 2026 · github.com
Where Specifiction places it
- Linters#15 of 337.8