vanilla-rails-naming

Installation
SKILL.md

Vanilla Rails Naming

37signals naming conventions from production Basecamp codebases.

The Naming Cascade

Every state change flows through this cascade:

Layer Pattern Example
Concern Adjective (-able/-ible) Card::Closeable
State model Noun Closure
Controller Plural noun ClosuresController
Route Singular resource resource :closure
Method Plain verb (no !) card.close
Async enqueue *_later notify_watchers_later
Sync execute *_now or plain notify_watchers_now

If the cascade doesn't flow, the naming is wrong.

Installs
1
GitHub Stars
3
First Seen
May 5, 2026
vanilla-rails-naming — zemptime/zemptime-marketplace