rrrene/credo
A static code analysis tool for the Elixir language with a focus on code consistency and teaching.
{ "createdAt": "2015-09-27T13:16:15Z", "defaultBranch": "master", "description": "A static code analysis tool for the Elixir language with a focus on code consistency and teaching.", "fullName": "rrrene/credo", "homepage": "http://credo-ci.org/", "language": "Elixir", "name": "credo", "pushedAt": "2025-11-17T21:08:24Z", "stargazersCount": 5092, "topics": [ "code-analysis", "credo", "elixir", "linter", "static-analysis" ], "updatedAt": "2025-11-25T15:13:12Z", "url": "https://github.com/rrrene/credo"}Credo

Section titled “Credo ”Credo is a static code analysis tool for the Elixir language with a focus on teaching and code consistency.
It can show you refactoring opportunities in your code, complex code fragments, warn you about common mistakes, show inconsistencies in your naming scheme and - if needed - help you enforce a desired coding style.

Installation and Usage
Section titled “Installation and Usage”The easiest way to add Credo to your project is by using Mix.
Add :credo as a dependency to your project’s mix.exs:
defp deps do [ {:credo, "~> 1.7", only: [:dev, :test], runtime: false} ]endAnd run:
$ mix deps.get
$ mix credoDocumentation
Section titled “Documentation”Documentation is available on Hexdocs
Integrations
Section titled “Integrations”IDE/Editor
Section titled “IDE/Editor”Some IDEs and editors are able to run Credo in the background and mark issues inline.
- IntelliJ Elixir - Elixir plugin for JetBrains IDEs (IntelliJ IDEA, Rubymine, PHPStorm, PyCharm, etc)
- linter-elixir-credo - Package for Atom editor (by @smeevil)
- Elixir Linter (Credo) - VSCode extension (by @pantajoe)
- flycheck - Emacs syntax checking extension
- kakoune - Config for linting support in Kakoune editor
- Neovim via null-ls - diagnostics builtin
Automated Code Review
Section titled “Automated Code Review”- Codacy - checks your code from style to security, duplication, complexity, and also integrates with coverage.
Contributing
Section titled “Contributing”- Fork it!
- Create your feature branch (
git checkout -b my-new-feature) - Commit your changes (
git commit -am 'Add some feature') - Push to the branch (
git push origin my-new-feature) - Create new Pull Request
Author
Section titled “Author”René Föhring (@rrrene)
License
Section titled “License”Credo is released under the MIT License. See the LICENSE file for further details.