crawlex

Crawler in elixir.


License
MIT

Documentation

Crawlex

Crawlex allows you to crawl into your elixir files inside your application, calculate comment-to-code ratio of each file, and aggregate those ratios to find the average ratio or percentage.

Installation

To install Crawlex, put the following dependency inside your mix.exs file

defp deps do
  [
    ...
    {:crawlex, "~> 0.1.0", only: :dev, runtime: false},
    ...
  ]
end

This will gives you some mix tasks that you could use to calculate comment-to-code ratio of your application or project files.

How to Use

To calculate Comment-to-Code ratio (CCR) of your elixir project your could run:

mix crawlex

This will print CCR , total lines, and total comments of each file under your application /lib folder and calculate the average of you application's CCR at the bottom of the report.

To find CCR of a specific directory you could specify the directory path as follows:

mix crawlex path/to/your/directory

To find CCR of a single (elixir) file you could specify the file path instead:

mix crawlex path/to/your/elixir/file.ex

Calculating CCR

Crawlex will not count empty lines in a file hence empty lines will not contribute to total lines of code nor CCR.

When you generate a CCR report using Crawlex, it will gives a CCR category according to following simple rule:

  • Average CCR is 0 - 5% : HORRIBLE
  • Average CCR is 5 - 10% : POOR
  • Average CCR is 10 - 15% : AVERAGE
  • Average CCR is 15 - 25% : GOOD
  • Average CCR is > 25% : EXCELLENT

In a CCR report generated by Crawlex, any files that falls under category AVERAGE, GOOD, or EXCELLENT will be colored green. Otherwise, red.