Low commit activity in last 3 years
A long-lived project that still receives updates
Enables Shopify’s Ruby Style Guide recommendations (and bundles them with other niceties, like `rubocop-{minitest,performance,rails,rake}`).
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Project Readme

RuboCop Standard

This repository enables all of Shopify's recommended RuboCop configurations, plus some extra ones I've found useful for my projects, like:

Installation

Gemfile

gem "rubocop-standard"

.rubocop.yml

require:
  - rubocop-standard

How to configure

In your .rubocop.yml file, just write:

inherit_gem:
  rubocop-standard:
    - config/default.yml

By default, rubocop-performance and rubocop-rake rules are enforced, because it's assumed that every Ruby project cares about these two sets. Why? Well, everyone should care about performance, and every project uses Rake (and Bundler) as de facto tools.

This gem also has the following Rubocop tools as dependencies:

  • rubocop-minitest
  • rubocop-rails
  • rubocop-rails-accessibility
  • rubocop-sorbet

You can add those in for whichever project needs them:

inherit_gem:
  rubocop-standard:
    - config/default.yml
    - config/minitest.yml
    - config/rails.yml # includes rails-accessibility

Other features

This project also excludes directories that are ancillary to the core lib code:

AllCops:
  Exclude:
    - bin/**/*
    - db/**/*
    - node_modules/**/*
    - sorbet/**/*
    - tmp/**/*
    - vendor/**/*

Rails environments also includes staging:

Rails/UnknownEnv:
  Environments:
    - development
    - test
    - staging
    - production