37signals-style
37signals Style Guide
Patterns derived from analysis of 37signals' Fizzy codebase. Representative, not authoritative — these reflect observed conventions, not an official 37signals document.
Topic Map
Core Rails Patterns
references/controllers.md— Thin controllers, concerns, authentication, authorizationreferences/models.md— Fat models, scopes, query objects, concernsreferences/views.md— Presenters, partials, view helpers, template conventionsreferences/routing.md— RESTful design, nested resources, custom routesreferences/database.md— Schema design, indexes, migrations, query optimization
Frontend & Hotwire
references/hotwire.md— Turbo Drive, Turbo Frames, Turbo Streams patternsreferences/stimulus.md— Stimulus controller conventions, value API, targetsreferences/css.md— CSS organization, naming conventions, component patternsreferences/action-text.md— Rich text integration patternsreferences/actioncable.md— WebSocket channel patterns
More from lucianghinda/superpowers-ruby
ruby
Use when writing, reviewing, or debugging pure Ruby code — idiomatic patterns, modern 3.x+ features (pattern matching, Data.define, endless methods), error handling conventions (raise vs fail, result objects), memoization, and performance idioms. For Rails use rails-guides. For testing use minitest. For code style use sandi-metz-rules.
80rails-guides
Official Rails documentation. Use when asked about any Rails-specific topic including ActiveRecord, routing, controllers, views, mailers, jobs, Action Cable, Action Text, Active Storage, migrations, validations, callbacks, associations, caching, security, or internals.
49test-driven-development
Use when implementing any feature or bugfix, before writing implementation code
29sandi-metz-rules
This skill should be used when users request code review, refactoring, or code quality improvements for Ruby codebases. Apply Sandi Metz's four rules for writing maintainable object-oriented code - classes under 100 lines, methods under 5 lines, no more than 4 parameters, and controllers instantiate only one object. Use when users mention "Sandi Metz", "code quality", "refactoring", or when reviewing Ruby code for maintainability.
12writing-plans
Use when you have a spec or requirements for a multi-step task, before touching code
12brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior. Explores user intent, requirements and design before implementation.
12