skills/37signals-style/SKILL.md
Rails coding patterns derived from analysis of 37signals' Fizzy codebase. Use when writing Rails code in 37signals/Basecamp style or when asked to follow 37signals patterns. Covers controllers, models, views, Hotwire, testing, database, security, and team philosophy.
npx skillsauth add lucianghinda/superpowers-ruby 37signals-styleInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Patterns derived from analysis of 37signals' Fizzy codebase. Representative, not authoritative — these reflect observed conventions, not an official 37signals document.
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 optimizationreferences/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 patternsreferences/authentication.md — Session management, password reset, remember mereferences/background-jobs.md — Solid Queue/ActiveJob patterns, retry strategiesreferences/caching.md — Fragment caching, counter caches, cache keysreferences/email.md — Mailer conventions, transactional email patternsreferences/notifications.md — In-app notifications, notification objectsreferences/filtering.md — Search and filter patterns, query objectsreferences/workflows.md — Multi-step processes, state machinesreferences/webhooks.md — Inbound/outbound webhook handlingreferences/active-storage.md — File upload conventions, image variantsreferences/configuration.md — Environment config, credentials, feature flagsreferences/observability.md — Logging, error tracking, instrumentationreferences/performance.md — N+1 prevention, caching strategies, query optimizationreferences/security-checklist.md — OWASP checklist, Brakeman, safe patternsreferences/multi-tenancy.md — Account scoping, current attributesreferences/mobile.md — Mobile-specific patterns, PWA considerationsreferences/ai-llm.md — LLM/AI integration patternsreferences/testing.md — 37signals testing approach, fixtures, minitest conventionsreferences/development-philosophy.md — Basecamp Way, calm technology, YAGNIreferences/what-they-avoid.md — Patterns 37signals deliberately avoidsreferences/dhh.md — DHH's Rails principles and design opinionsreferences/jorge-manrubia.md — Jorge Manrubia's contributions and patternsreferences/jason-zimdars.md — Jason Zimdars' design and UX conventionsreferences/accessibility.md — Accessibility patterns and ARIA usagereferences/watching.md — Activity feeds, event tracking patternsreferences/rails-engineering-standards-and-practices.md — Engineering standardsdevelopment
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.
testing
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.
tools
--- name: ruby-upgrade description: Use when upgrading the Ruby interpreter version of a Bundler/Rails app — especially "upgrade to Ruby 4", "bump Ruby to 4.0", "audit Ruby 4 compatibility", "what breaks on Ruby 4", or a specific target like "Ruby 4.0.5". Triggers on Ruby-major risk symptoms: CGI.parse/CGI::Cookie removal, Net::HTTP implicit Content-Type dropped, demoted default gems (ostruct/logger/benchmark/irb), SortedSet, Set#inspect changes, native-extension recompile crashes, openssl 4 pin
development
Use when stuck after multiple debug attempts and want to escalate to a stronger one-shot model (GPT-5 Pro, Opus, Gemini Pro) — packages a self-contained "oracle prompt" with Ruby/Rails project briefing, verbatim error, what-was-tried, constraints, and just-enough attached files. Triggers include "ask the oracle", "write a letter to GPT-5", "I'm stuck, draft a prompt for another model", "/tmp/letter.md".