Flog
Reek
Flog | Reek | |
---|---|---|
8 | 6 | |
933 | 4,048 | |
0.0% | - | |
5.5 | 7.6 | |
about 1 year ago | 3 days ago | |
Ruby | Ruby | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Flog
-
Practical approach to software complexity
Taking actual measurements is pretty easy and usually limited to execution of a single command. In ruby universe that would be flog.
- The flog gem reports the most tortured code in an easy to read pain report
-
Flog-Driven Development
You point flog to a file, or directory, and it provides you with a score. The higher the score, the more attention you might want to pay to it. As for how flog calculates the number, I'll let flog summarize itself again:
-
Improve Code in Your Ruby Application with RubyCritic
Flog checks how difficult your code is to test. It sets a complexity score for each line of code and sums up the score for each method and class.
-
Gems that can identify churn, complexity, duplication and smells.
flog
- Code Red: The Business Impact of Code Quality
Reek
-
First commits in a Ruby on Rails app
Rubycritic uses reek under the hood so I added a reek config files at .reek.yml with the following content:
-
Code Reviewing a Ruby on Rails application.
Reek is a code smell detection tool for Ruby that helps identify potential design issues. It analyzes your codebase and provides feedback on areas that might benefit from refactoring or improvement. Here's an overview of what Reek is and how to use it:
-
Improve Code in Your Ruby Application with RubyCritic
$ reek app/controllers/erp/orders_controller.rb Inspecting 1 file(s): S app/controllers/erp/orders_controller.rb -- 1 warning: [91]:UncommunicativeVariableName: Erp::OrdersController#create has the variable name 'e' [https://github.com/troessner/reek/blob/v6.1.1/docs/Uncommunicative-Variable-Name.md]
-
Gems that can identify churn, complexity, duplication and smells.
reek
-
Security Risks On Rails: Misconfiguration and Unsafe Integrations
Other useful gems you may take a look at are dawnscanner, reek, and hakiri_toolbelt.
-
The best way to review my code for code smells?
Beside RuboCop, I found reek very useful. https://github.com/troessner/reek
What are some alternatives?
Flay - Flay analyzes code for structural similarities. Differences in literal values, variable, class, method names, whitespace, programming style, braces vs do/end, etc are all ignored.
Rubocop - A Ruby static code analyzer and formatter, based on the community Ruby style guide. [Moved to: https://github.com/rubocop/rubocop]
rails_best_practices - a code metric tool for rails projects
Pronto - Quick automated code review of your changes
Rubycritic - A Ruby code quality reporter
Cane - Code quality threshold checking as part of your build
Brakeman - A static analysis security vulnerability scanner for Ruby on Rails applications
SimpleCov - Code coverage for Ruby with a powerful configuration library and automatic merging of coverage across test suites
Coverband - Ruby production code coverage collection and reporting (line of code usage)