Skip to content
/ credo Public
forked from rrrene/credo

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

License

Notifications You must be signed in to change notification settings

maedhr/credo

This branch is 1220 commits behind rrrene/credo:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

d228cf6 · Aug 6, 2020
Jul 18, 2020
Jan 20, 2020
Nov 16, 2015
May 1, 2020
Aug 6, 2020
Jul 28, 2020
Jul 28, 2020
Feb 18, 2018
Jan 12, 2019
May 1, 2020
Jan 19, 2020
Jul 18, 2020
Jul 28, 2020
Oct 9, 2017
Dec 8, 2019
Apr 1, 2018
Mar 27, 2020
Jul 14, 2020
Jul 30, 2018
Apr 25, 2020
Apr 29, 2020

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.

Credo

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.4", only: [:dev, :test], runtime: false}
  ]
end

And run:

$ mix deps.get

$ mix credo

Requirements

Although Credo mostly supports Elixir 1.5, which is compatible with Erlang/OTP 18–20, Credo itself requires Erlang/OTP 20+.

Documentation

Documentation is available on Hexdocs

Integrations

IDE/Editor

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.

Contributing

  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

Author

René Föhring (@rrrene)

License

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

About

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

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Elixir 98.7%
  • Other 1.3%