Reek
Code smell detector for Ruby (by troessner)
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. (by seattlerb)
Reek | Flay | |
---|---|---|
6 | 3 | |
4,081 | 748 | |
0.2% | 0.3% | |
7.6 | 5.0 | |
21 days ago | 11 months ago | |
Ruby | Ruby | |
MIT License | MIT License |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
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.
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.
Reek
Posts with mentions or reviews of Reek.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2024-01-17.
-
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
Flay
Posts with mentions or reviews of Flay.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-07-03.
-
Code Reviewing a Ruby on Rails application.
Flay analyzes ruby code for structural similarities. Differences in literal values, names, whitespace, and programming style are all ignored. Flay helps reduce code duplication and keep your code DRY (Don't Repeat Yourself).
-
Improve Code in Your Ruby Application with RubyCritic
Flay identifies structural Ruby code similarities, including:
-
Gems that can identify churn, complexity, duplication and smells.
flay
What are some alternatives?
When comparing Reek and Flay you can also consider the following projects:
Rubocop - A Ruby static code analyzer and formatter, based on the community Ruby style guide. [Moved to: https://github.com/rubocop/rubocop]
Flog - Flog reports the most tortured code in an easy to read pain report. The higher the score, the more pain the code is in.
Rubycritic - A Ruby code quality reporter
Brakeman - A static analysis security vulnerability scanner for Ruby on Rails applications
Traceroute - A Rake task gem that helps you find the unused routes and controller actions for your Rails 3+ app