dhh-rails-style

Apply DHH Rails conventions to Ruby and Rails code for RESTful models, controllers, and views.

Updated Aug 23, 2026
One-click install
npx skills add https://github.com/Folly-Partners/claudesync --skill dhh-rails-style-folly-partners
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: dhh-rails-style
Source: https://github.com/Folly-Partners/claudesync/tree/main/plugins/cache/every-marketplace/compound-engineering/2.23.1/skills/dhh-rails-style
Command: npx skills add https://github.com/Folly-Partners/claudesync --skill dhh-rails-style-folly-partners

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill codifies DHH/37signals Rails conventions to produce readable, RESTful Ruby and Rails code, guiding structure from models to controllers and views to reduce cognitive load and enhance maintainability.

Core Features & Use Cases

  • Enforces domain-oriented model concerns and RESTful controllers to keep code cohesive.
  • Encourages use of Current attributes, Turbo streams, and lean controllers over service objects.
  • Guides code reviews and refactoring discussions to align with DHH-style patterns such as fat models and clear responsibilities.

Quick Start

Apply the DHH Rails style as your default approach: integrate the conventions into newly created code, gradually refactor existing components to use concerns, current attributes, and Turbo-driven updates.

Frequently Asked Questions about dhh-rails-style

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I apply DHH Rails style conventions to my codebase?

DHH Rails style enforces RESTful, readable conventions across models, controllers, and views using patterns like Current attributes, concerns, and Turbo Streams. Start by integrating these conventions into new code, then gradually refactor existing components to use domain-oriented concerns and lean controllers instead of service objects.

What's the difference between DHH Rails style and other Rails approaches?

DHH style prioritizes fat models with domain logic, RESTful controllers, and Turbo-driven updates over service objects and complex layering. This approach reduces cognitive load by keeping related concerns cohesive and emphasizing conventional Rails patterns used at 37signals and Basecamp.

Can I use DHH Rails conventions with Turbo and Stimulus?

Yes. DHH Rails style explicitly codifies patterns for Turbo Streams and Stimulus integration, guiding how to structure controllers and views for real-time updates while maintaining RESTful principles and readable code organization.

When should I use Current attributes in DHH-style Rails code?

Current attributes store request-scoped data like the authenticated user without passing context through every method. DHH style encourages using Current for clean, maintainable access to shared state in models and controllers aligned with 37signals conventions.

How do concerns improve code organization in DHH Rails style?

Concerns group related model behaviors and responsibilities into reusable modules, keeping models focused and maintainable. DHH style uses domain-oriented concerns to extract common patterns across models while preserving readability and conventional structure.

What code review guidance does DHH Rails style provide?

DHH Rails style guides reviews toward RESTful controller design, lean actions, fat models with cohesive logic, and Turbo-driven interactions. It helps align discussions on whether code follows conventional Rails patterns and reduces unnecessary abstraction layers.