SKILL.md
Ruby Knowledge
Authoritative resource map for Ruby development. Use these sources rather than searching broadly.
Never use these sources:
- ruby-doc.org
- apidock.com
Official Documentation
Primary source: <https://docs.ruby-lang.org/en/>
Other Useful Resources
- <https://rubyreferences.github.io/rubychanges/> - Version-by-version changelog with examples
- <https://railsatscale.com/> - Shopify engineering blog (Latest updates on Ruby and its toolings)
Core & Standard Library
| Term | Meaning |
|---|---|
| Default gem | Ships with Ruby, cannot uninstall |
| Bundled gem | Ships with Ruby, can uninstall/replace |
| Standard library | Part of Ruby itself, not a gem |
To check which gem versions ship with each Ruby release: <https://stdgems.org/>
| Version | Documentation | Standard Library |
|---|---|---|
| 3.2 | <https://docs.ruby-lang.org/en/3.2/> | <https://docs.ruby-lang.org/en/3.2/standardlibraryrdoc.html> |
| 3.3 | <https://docs.ruby-lang.org/en/3.3/> | <https://docs.ruby-lang.org/en/3.3/standardlibraryrdoc.html> |
| 3.4 | <https://docs.ruby-lang.org/en/3.4/> | <https://docs.ruby-lang.org/en/3.4/standardlibrarymd.html> |
| 4.0 | <https://docs.ruby-lang.org/en/4.0/> | <https://docs.ruby-lang.org/en/4.0/standardlibrarymd.html> |
| master | <https://docs.ruby-lang.org/en/master/> | <https://docs.ruby-lang.org/en/master/standardlibrarymd.html> |
Testing Frameworks
| Framework | GitHub | Documentation |
|---|---|---|
| minitest | <https://github.com/minitest/minitest> | <https://docs.seattlerb.org/minitest/> |
| test-unit | <https://github.com/test-unit/test-unit> | <https://test-unit.github.io/> |
Typing Ecosystem
Two type definition formats exist in Ruby:
- RBI - Sorbet's format. Uses Ruby DSL syntax (
sig { ... }) in.rband.rbifiles. - RBS - Official Ruby format (Ruby 3.0+). Dedicated syntax in
.rbsfiles or inline as comments.
Sorbet Ecosystem
Sorbet is a static and runtime type checker for Ruby, maintained by Stripe. Key companion tools:
- Tapioca - Generates RBI files for gems and DSLs (Rails, ActiveRecord, etc.)
- Spoom - Coverage analysis, strictness bumping, dead code detection, signature migration
RBS Ecosystem
- rbs - Official CLI for working with RBS files (prototype, list, methods)
- Steep - Type checker that uses RBS
RBS Inline Comments
Sorbet supports RBS-style inline type annotations using #: comment syntax. This eliminates the need for separate .rbi files or verbose sig blocks.