rubocop-rails
Ruby style guide
rubocop-rails | Ruby style guide | |
---|---|---|
7 | 36 | |
781 | 16,380 | |
2.2% | 0.1% | |
9.1 | 6.6 | |
9 days ago | 4 months ago | |
Ruby | ||
MIT License | - |
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.
rubocop-rails
-
RuboCoping with legacy: Bring your Ruby code up to Standard
1) Auto-correcting a whole (large) codebase at once with tons of offenses and dozens of active branches should be used with caution. Merge conflicts, blame pollution (ok, can be solved with .git-blame-ignore-revs, though can hardly remember any project using it). Though, the most important argument is that auto-correct can introduce bugs. Unfortunately, even safe autocorrect can be unsafe. Recently, I broke one popular project (with a decent, but not 99.999% test coverage) with a single "safe" auto-correction commit π (This issue).
-
Linting and Auto-formatting Ruby Code With RuboCop
It's also possible to extend RuboCop through additional linters and formatters. You can build your own extensions or take advantage of existing ones if they are relevant to your project. For example, a Rails extension is available for the purpose of enforcing Rails best practices and coding conventions.
-
Technical leadership during large refactors
I'm still getting used to writing these. Still, this article from Evil Martians has been a big help. The rubocop-rails codebase also had some cops similar to what I wanted to put together. The cop we've put together checks if the class inherits from ActiveModel::Serializer and adds an offence to that line.
-
Future of Ruby β AST Tooling
Let's take a glance at the action_filter cop real quick here, but just a quick part of it:
-
Learning style?
Following on from this, I highly recommend setting up your editor to automatically lint Ruby files with RuboCop and its Rails extension and start adapting your code to adhere to the Ruby Style Guide.
- Rails 7 will introduce invert_where method, but it's dangerous
-
Learning Ruby: Things I Like, Things I Miss from Python
I just would like to point out that even though that is the most sane way, it comes with it owns set of problems. One of them is when developers start to code to cheat the linter, or they complicate the code just to "make the linter happy", another is when the linting rule introduces problems/errors like https://github.com/rubocop-hq/rubocop-rails/issues/418
Ruby style guide
-
An Introduction to RuboCop for Ruby on Rails
By default, RuboCop will enforce the style defined in the Ruby Community Style Guide. We can tailor it to our specific tastes and context, but let's rely on this basic set of rules to learn how to use RuboCop.
-
Code Reviewing a Ruby on Rails application.
RuboCop is a Ruby static code analyzer (a.k.a. linter) and code formatter. Out of the box it will enforce many of the guidelines outlined in the community Ruby Style Guide. Apart from reporting the problems discovered in your code, RuboCop can also automatically fix many of them for you.
- Naming conventions and style guides in programming"
-
Shine bright like a.. Ruby π
Read more about Ruby.
-
10 Best Practices for Ruby Programmers: Tips for Efficient, Maintainable, and Bug-Free Code
8. Use a consistent style: Consistency is key when it comes to writing readable code. Use a consistent style throughout your codebase, and follow common Ruby style guides like Ruby Style Guide.
-
It's Official: the Standard Ruby VS Code extension
The real standard is to use default rubocop configuration which is based on https://rubystyle.guide/.
-
Why I think we should adopt and use new Ruby features
It used to, before recently. It literally said, "The and and or keywords are banned."
-
Rubyme: My minimalist Ruby Handbook
rubocop/ruby-style-guide
-
Development guidelines
As you see - there are no reference to any technology or framework. There are a lot of best-practices for almost any framework, so you can choose an appropriate one. For example - if you're a rails developer, then you can check https://github.com/rubocop/ruby-style-guide and https://github.com/rubocop/rails-style-guide but if you're a golang developer - https://github.com/uber-go/guide/blob/master/style.md and https://developers.mattermost.com/contribute/more-info/server/style-guide/
- `and` and `or` control flow operators now allowed in Rubocop
What are some alternatives?
Django - The Web framework for perfectionists with deadlines.
Rails style guide - A community-driven Ruby on Rails style guide
coc-solargraph - Solargraph extension for coc.nvim
RSpec style guide - RSpec Best Practices
Strapi - π Strapi is the leading open-source headless CMS. Itβs 100% JavaScript/TypeScript, fully customizable and developer-first.
fast-ruby - :dash: Writing Fast Ruby :heart_eyes: -- Collect Common Ruby idioms.
rubocop-performance - An extension of RuboCop focused on code performance checks.
Fundamental Ruby - :books: Fundamental programming with ruby examples and references. It covers threads, SOLID principles, design patterns, data structures, algorithms. Books for reading. Repo for website https://github.com/khusnetdinov/betterdocs
standard - Ruby's bikeshed-proof linter and formatter π²
Best-Ruby - Ruby Tricks, Idiomatic Ruby, Refactoring and Best Practices
gringotts - A complete payment library for Elixir and Phoenix Framework
contracts.ruby - Contracts for Ruby.