A RuboCop extension focused on enforcing Rails best practices and coding conventions.
Note: This repository manages rubocop-rails gem (>= 2.0.0). rubocop-rails gem (<= 1.5.0) has been renamed to rubocop-rails_config gem.
Just install the
gem install rubocop-rails
or if you use bundler put this in your
gem 'rubocop-rails', require: false
You need to tell RuboCop to load the Rails extension. There are three ways to do this:
RuboCop configuration file
Put this into your
Alternatively, use the following array notation when specifying multiple extensions.
require: - rubocop-other-extension - rubocop-rails
Now you can run
rubocop and it will automatically load the RuboCop Rails
cops together with the standard cops.
rubocop --require rubocop-rails
--rails option is required while
rubocop command supports
RuboCop::RakeTask.new do |task| task.requires << 'rubocop-rails' end
All cops are located under
lib/rubocop/cop/rails, and contain
.rubocop.yml, you may treat the Rails cops just like any other
cop. For example:
Rails/FindBy: Exclude: - lib/example.rb
You can read a lot more about RuboCop Rails in its official docs.
Rails cops support the following versions:
- Rails 4.2+
If you use RuboCop Rails in your project, you can include one of these badges in your readme to let people know that your code is written following the community Rails Style Guide.
Here are the Markdown snippets for the two badges:
[![Rails Style Guide](https://img.shields.io/badge/code_style-rubocop-brightgreen.svg)](https://github.com/rubocop/rubocop-rails) [![Rails Style Guide](https://img.shields.io/badge/code_style-community-brightgreen.svg)](https://rails.rubystyle.guide)
Checkout the contribution guidelines.
rubocop-rails is MIT licensed. See the accompanying file for
the full text.