Skip to content
/ credo Public

A static code analysis tool for the Elixir language with a focus on code consistency and teaching.


Notifications You must be signed in to change notification settings


Repository files navigation

Credo CI Tests Inline docs

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

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}

And run:

$ mix deps.get

$ mix credo


Documentation is available on Hexdocs



Some IDEs and editors are able to run Credo in the background and mark issues inline.

Automated Code Review

  • Codacy - checks your code from style to security, duplication, complexity, and also integrates with coverage.
  • SourceLevel - tracks how your code changes over time and have this information accessible to your whole team.
  • Stickler CI - checks your code for style and best practices across your entire stack.


  1. Fork it!
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request


René Föhring (@rrrene)


Credo is released under the MIT License. See the LICENSE file for further details.