Reek review
A focused, configurable Ruby linter for finding and reporting code smells.
Reviewed by iTechGuides Editors · Editorial team · Updated Oct 2026
Reek is an open-source static analysis tool for Ruby teams that want to identify code smells in classes, modules, methods, and source files. Its detectors cover patterns including Feature Envy, Data Clump, Large Class, Long Parameter List, and Uncommunicative Name. Reek runs from the command line against files, directories, or standard input, making it suitable for developers and teams working with Ruby codebases that want configurable smell analysis rather than broad multi-language linting.
Its strongest feature is the control it provides over analysis. Teams can configure detectors and directory-specific rules through .reek.yml files, while source-code comments can suppress or configure individual warnings. Reek can also generate a todo configuration, which gives teams a way to establish an initial baseline before addressing existing findings. Reports are available in plain text, HTML, YAML, JSON, XML, and GitHub formats. Rake tasks, an RSpec matcher, and a Developer API extend its use beyond a standalone command-line workflow.
Reek also fits several development environments and automation paths, with integrations for Vim, TextMate, Atom, SublimeLinter, VS Code, Emacs, overcommit, pronto-reek, and GitHub Actions. The published model is open source and self-hosted, with an MIT license and no paid tiers described. Its focus is deliberately narrow: Ruby code-smell detection, not multi-language analysis or automatic remediation. Teams that want configurable Ruby smell reporting and established editor, CI, Rake, or RSpec connections should consider Reek. Teams that require autofix or support for more than one language should choose a different tool.
Reek pros and cons
- Where it wins
- Detects Ruby smells with configurable detectors and suppressions
- Supports CLI, CI, Rake, RSpec, editors, and GitHub Actions
- Exports plain-text, HTML, YAML, JSON, XML, and GitHub reports
- Where it doesn't
- Supports Ruby rather than multiple programming languages
- Does not provide autofix
- Requires configuration for directory-specific rules and suppressions
Reek fact sheet, pricing and score →
Advertiser disclosure: iTechGuides is reader-supported. Vendors can pay for top positions in our rankings and for a place on other products' pages, and we may earn a commission when you click some links. Bought places stand at the number bought; this page and our disclosure say so. Paying vendors may get a fuller, more detailed review from our editors, and that review can change their score. How we rank.
Last updated · How we research and update