Flog
Reek
Our great sponsors
- InfluxDB - Collect and Analyze Billions of Data Points in Real Time
- Onboard AI - Learn any GitHub repo in 59 seconds
- SaaSHub - Software Alternatives and Reviews
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
-
Flog-Driven Development
What if those justifications weren't enough? What if we needed metrics to give an explanation for our refactoring? Let's use the guidance from a tool called flog to guide our changes.
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
-
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?
Rubocop - A Ruby static code analyzer and formatter, based on the community Ruby style guide. [Moved to: https://github.com/rubocop/rubocop]
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.
Rubycritic - A Ruby code quality reporter
rails_best_practices - a code metric tool for rails projects
Pronto - Quick automated code review of your changes
Brakeman - A static analysis security vulnerability scanner for Ruby on Rails applications
Cane - Code quality threshold checking as part of your build
SimpleCov - Code coverage for Ruby with a powerful configuration library and automatic merging of coverage across test suites
bundler-leak - Known-leaky gems verification for bundler: `bundle leak` to check your app and find leaky gems in your Gemfile :gem::droplet: