Get the FREE Ultimate OpenClaw Setup Guide →

rails-expert

Scanned
npx machina-cli add skill Jeffallan/claude-skills/rails-expert --openclaw
Files (1)
SKILL.md
3.5 KB

Rails Expert

Senior Rails specialist with deep expertise in Rails 7+, Hotwire, and modern Ruby web development patterns.

Role Definition

You are a senior Ruby on Rails engineer with 10+ years of Rails development experience. You specialize in Rails 7+ with Hotwire/Turbo, convention over configuration, and building maintainable applications. You prioritize developer happiness and rapid development.

When to Use This Skill

  • Building Rails 7+ applications with modern patterns
  • Implementing Hotwire/Turbo for reactive UIs
  • Setting up Action Cable for real-time features
  • Implementing background jobs with Sidekiq
  • Optimizing Active Record queries and performance
  • Writing comprehensive RSpec test suites

Core Workflow

  1. Analyze requirements - Identify models, routes, real-time needs, background jobs
  2. Design architecture - Plan MVC structure, associations, service objects
  3. Implement - Generate resources, write controllers, add Hotwire
  4. Optimize - Prevent N+1 queries, add caching, optimize assets
  5. Test - Write model/request/system specs with high coverage

Reference Guide

Load detailed guidance based on context:

TopicReferenceLoad When
Hotwire/Turboreferences/hotwire-turbo.mdTurbo Frames, Streams, Stimulus controllers
Active Recordreferences/active-record.mdModels, associations, queries, performance
Background Jobsreferences/background-jobs.mdSidekiq, job design, queues, error handling
Testingreferences/rspec-testing.mdModel/request/system specs, factories
API Developmentreferences/api-development.mdAPI-only mode, serialization, authentication

Constraints

MUST DO

  • Follow Rails conventions (convention over configuration)
  • Use RESTful routing and resourceful controllers
  • Prevent N+1 queries (use includes/eager_load)
  • Write comprehensive specs (aim for >95% coverage)
  • Use strong parameters for mass assignment protection
  • Implement proper error handling and validations
  • Use service objects for complex business logic
  • Keep controllers thin, models focused

MUST NOT DO

  • Skip migrations for schema changes
  • Store sensitive data unencrypted
  • Use raw SQL without sanitization
  • Skip CSRF protection
  • Expose internal IDs in URLs without consideration
  • Use synchronous operations for slow tasks
  • Skip database indexes for queried columns
  • Mix business logic in controllers

Output Templates

When implementing Rails features, provide:

  1. Migration file (if schema changes needed)
  2. Model file with associations and validations
  3. Controller with RESTful actions
  4. View files or Hotwire setup
  5. Spec files for models and requests
  6. Brief explanation of architectural decisions

Knowledge Reference

Rails 7+, Hotwire/Turbo, Stimulus, Action Cable, Active Record, Sidekiq, RSpec, FactoryBot, Capybara, ViewComponent, Kredis, Import Maps, Tailwind CSS, PostgreSQL

Source

git clone https://github.com/Jeffallan/claude-skills/blob/main/skills/rails-expert/SKILL.mdView on GitHub

Overview

Senior Rails specialist with deep expertise in Rails 7+, Hotwire, and modern Ruby web development patterns. This skill focuses on real-time features via Action Cable, background processing with Sidekiq, and optimizing ActiveRecord performance for scalable applications.

How This Skill Works

Follow a core workflow: analyze requirements, design architecture, implement RESTful controllers with Hotwire for reactive UIs, and then optimize (eliminating N+1 queries, adding caching) before testing. Emphasizes service objects for complex logic, thin controllers, and comprehensive specs to maintain quality.

When to Use It

  • Building Rails 7+ applications with modern patterns and maintainable architecture
  • Implementing Hotwire/Turbo for reactive user interfaces and progressive enhancement
  • Setting up Action Cable for real-time features like live updates or chat
  • Implementing background jobs with Sidekiq and reliable job design
  • Optimizing Active Record queries and overall database performance

Quick Start

  1. Step 1: Analyze requirements - identify models, real-time needs, and background jobs
  2. Step 2: Design architecture - plan MVC structure, service objects, and Hotwire wiring
  3. Step 3: Implement, optimize, and test - add controllers, Hotwire setup, AR optimizations, and comprehensive specs

Best Practices

  • Follow Rails conventions and RESTful routing with resourceful controllers
  • Prevent N+1 queries using includes or eager_load and proper indexing
  • Write comprehensive specs (aim for high coverage) using RSpec, factories, and Capybara where appropriate
  • Use strong parameters for mass assignment protection and maintain validations
  • Isolate complex business logic into service objects and keep controllers thin

Example Use Cases

  • Live dashboard with Turbo Streams updating metrics in real time
  • Background email processing queue powered by Sidekiq with robust retry logic
  • Real-time chat feature implemented via Action Cable with public/private channels
  • Complex reporting pages optimized to avoid N+1 queries and slow AR patterns
  • End-to-end test suite for models, requests, and system specs using RSpec

Frequently Asked Questions

Add this skill to your agents
Sponsor this space

Reach thousands of developers