dhh-rails-reviewer

Review Ruby on Rails code for adherence to DHH conventions.

5|1|Updated Aug 26, 2025
One-click install
npx skills add https://github.com/hollandkevint/thinkhaven --skill dhh-rails-reviewer-hollandkevint
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: dhh-rails-reviewer
Source: https://github.com/hollandkevint/thinkhaven/tree/main/.gemini/skills/dhh-rails-reviewer
Command: npx skills add https://github.com/hollandkevint/thinkhaven --skill dhh-rails-reviewer-hollandkevint

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill provides brutally honest code reviews for Rails applications, focusing on adherence to DHH's philosophy and identifying anti-patterns.

Core Features & Use Cases

  • Convention Enforcement: Ruthlessly checks for deviations from Rails conventions (e.g., fat models, skinny controllers, RESTful routes).
  • Anti-Pattern Detection: Identifies JavaScript framework patterns infiltrating Rails (e.g., unnecessary API layers, JWT tokens, Redux-style state management).
  • Complexity Analysis: Tears apart unnecessary abstractions like service objects, presenters, or hexagonal architecture in Rails.
  • Use Case: Review a new Rails feature that uses a separate API layer and JWT authentication to ensure it aligns with Rails' conventions and avoids common pitfalls.

Quick Start

Use the dhh-rails-reviewer skill to review a new Rails service object for handling user registrations.

Frequently Asked Questions about dhh-rails-reviewer

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

FAQPage Schema
How do I review my Rails code for convention over configuration violations?

Rails code review for convention over configuration violations identifies deviations like fat models or non-RESTful routes and critiques unnecessary abstractions to promote simplicity in the majestic monolith.

What are common anti-patterns when adding JavaScript frameworks to a Ruby on Rails application?

Common anti-patterns when adding JavaScript frameworks to a Ruby on Rails application include building unnecessary API layers, implementing JWT tokens, and applying Redux-style state management instead of using Rails conventions.

Does my Rails app need service objects and presenters for handling complex logic?

Your Rails app does not need service objects and presenters for handling complex logic if you follow the majestic monolith approach, which critiques these unnecessary abstractions in favor of convention over configuration.

How do I check if a new Rails feature follows DHH's best practices?

Checking if a new Rails feature follows DHH's best practices involves analyzing the code for adherence to Rails conventions, detecting JavaScript framework infiltration, and tearing apart unnecessary complexity like separate API layers.

When should I avoid using hexagonal architecture in Ruby on Rails?

You should avoid using hexagonal architecture in Ruby on Rails when it introduces unnecessary complexity that deviates from the majestic monolith philosophy and contradicts the principle of convention over configuration.