rails-autoloading

Installation
SKILL.md

Rails Autoloading (Zeitwerk)

File-to-Constant Naming

  • snake_case file name maps to CamelCase constant — strictly enforced
  • app/models/blog_post.rb -> BlogPost
  • app/controllers/admin/users_controller.rb -> Admin::UsersController
  • app/services/payment_gateway/stripe_service.rb -> PaymentGateway::StripeService
  • Verify setup with bin/rails zeitwerk:check

Directory Structure and Namespaces

  • Directories automatically create namespace modules
  • app/models/payment/credit_card.rb -> Payment::CreditCard
  • app/controllers/admin/users_controller.rb -> Admin::UsersController
  • Avoid naming conflicts: Admin::User vs ::User — use distinct names like Admin::UserAccount

Custom Autoload Paths

Installs
2
First Seen
May 8, 2026
rails-autoloading — gierd-inc/dev-skills