FREEDOM251

Freedom251 › Ruby Static Analysis Tools

Reek

Free plan Linux

Visit Reek Alternatives Pricing

Reek's own site

What Reek is

Reek is a free, open-source tool that examines Ruby classes, modules, and methods for code smells. It can scan source files or directories and accept Ruby code through standard input. Its checks include Feature Envy, Large Class, Long Parameter List, Too Many Statements, and Unused Parameters. Results can be produced as plain text, HTML, YAML, JSON, XML, or GitHub output. A `.reek.yml` file holds configuration, and source comments can suppress specific warnings. For Rails projects, the README describes directory-specific settings for locations such as `app/controllers` and `app/models`. Listed editor integrations include Vim, TextMate, Atom, SublimeLinter, VS Code, and Emacs; workflow projects include overcommit, ruby-critic, pronto-reek, and action-reek. Installation is through RubyGems with `gem install reek`. Official support covers CRuby 3.0 through 3.3 and JRuby 9.4. Reek identifies higher-level issues but does not provide general fixes, since appropriate changes depend on domain language and business logic. The repository uses the MIT license.

Who it suits

Reek suits Ruby developers and teams who want to identify code smells in files, directories, or standard input. Its Rails-oriented configuration and editor and workflow integrations may fit existing development processes.

What it does well

  • Free and open source under the MIT license
  • Checks multiple Ruby code smell patterns
  • Six listed output formats
  • Supports CRuby 3.0–3.3 and JRuby 9.4
  • Editor and workflow integrations are listed

What to know first

  • Does not provide generic fixes for reported smells
  • Official Ruby support is limited to listed versions
  • Unused Private Method detection is off by default

Limits

Reek identifies high-level code smells but does not provide generic fixes because suitable changes depend on domain language and business logic. The Unused Private Method detector is disabled by default and requires explicit enabling.

Plans

PlanBilled and limitsPrice
ReekRuby code smell detection · install via RubyGemsFree

As github.com lists them, read 11 Oct 2026. The maker's own page has the final word.

Getting started

  1. Install Ruby and a supported Ruby version
  2. Install Reek with `gem install reek`
  3. Run it against Ruby files or directories
  4. Provide Ruby code through standard input when needed
  5. Configure rules in `.reek.yml` or source comments

Verdict

Reek provides configurable Ruby smell detection with several output formats and integrations. Developers should expect to assess and make fixes themselves, since the right changes depend on the code’s domain and business logic.

Questions

What does Reek analyze?

It examines Ruby classes, modules, and methods and reports code smells.

How much does Reek cost?

Reek is free and open source, with a listed price of $0.

How is Reek installed?

The README instructs users to install it through RubyGems with `gem install reek`.

Which Ruby versions are supported?

Official support is listed for CRuby 3.0 through 3.3 and JRuby 9.4.

Which output formats are available?

Reek supports plain text, HTML, YAML, JSON, XML, and GitHub output.

Does Reek automatically fix smells?

No. It reports high-level smells and does not provide generic fixes.

Facts from Reek's own pages

Code checks
Its detectors include checks for issues such as Feature Envy, Large Class, Long Parameter List, Too Many Statements, and Uncommunicative Name. · github.com, 11 Oct 2026
Configuration
Reek supports a `.reek.yml` configuration file and permits smell warnings to be suppressed with source code comments. · github.com, 11 Oct 2026
Detection
Reek includes checks for code smells such as Feature Envy, Large Class, Long Parameter List, Too Many Statements, and Unused Parameters. · github.com, 11 Oct 2026
Detector defaults
The README says the controversial Unused Private Method detector is disabled by default and must be explicitly enabled. · github.com, 11 Oct 2026
Editor integrations
The README lists integrations for Vim, TextMate, Atom, SublimeLinter, VS Code, and Emacs. · github.com, 11 Oct 2026
Founded
2009 · github.com, 28 Sept 2026
Input
Reek can inspect directories or source files and can also accept Ruby code through standard input. · github.com, 11 Oct 2026
Installation
The README says to install Reek with RubyGems using `gem install reek`. · github.com, 11 Oct 2026
Integrations
The README lists editor integrations for Vim, TextMate, Atom, SublimeLinter, VS Code, and Emacs. · github.com, 11 Oct 2026
License
GitHub identifies the repository license as MIT. · github.com, 11 Oct 2026
Notable limit
Reek says it cannot provide generic fixes for reported smells because fixes depend on domain language and business logic. · github.com, 11 Oct 2026
Notable limits
The README says Reek identifies high-level code smells but cannot give generic fixes because fixes depend on domain language and business logic. · github.com, 11 Oct 2026
Other integrations
The README lists support projects including overcommit, ruby-critic, pronto-reek, and action-reek. · github.com, 11 Oct 2026
Output
Reek supports plain text, HTML, YAML, JSON, XML, and GitHub output formats. · github.com, 11 Oct 2026
Output formats
Reek supports plain text, HTML, YAML, JSON, XML, and GitHub output formats. · github.com, 11 Oct 2026
Purpose
Reek examines Ruby classes, modules, and methods and reports code smells. · github.com, 11 Oct 2026
Rails
The README describes directory-specific configuration as a way to make Reek Rails-friendly. · github.com, 11 Oct 2026
Rails use
The README describes configuring Reek for Rails with directory-specific settings for paths such as `app/controllers` and `app/models`. · github.com, 11 Oct 2026
Release
The changelog lists version 6.5.0 dated 2025-03-24. · github.com, 11 Oct 2026
Ruby compatibility
The README lists official support for CRuby 3.0 through 3.3 and JRuby 9.4. · github.com, 11 Oct 2026
Security and trust
The repository page has a Security and quality section, but the opened project page did not state a specific security certification or compliance claim. · github.com, 11 Oct 2026
Supported Ruby versions
The README lists official support for CRuby 3.0 through 3.3 and JRuby 9.4. · github.com, 11 Oct 2026
Workflow integrations
The README names overcommit, ruby-critic, pronto-reek, and the action-reek GitHub Action as projects that use or support Reek. · github.com, 11 Oct 2026

Where Reek stands on Freedom251

Look at these too