How I Architected My Big Rails App For Success
summary
Claims an eight‑month Rails rebuild succeeds by breaking the app into in‑repo rails engines with namespaced tables and migrations kept inside each engine (via a rails monkey‑patch), adding a thin domain API layer that returns POROs to avoid circular ActiveRecord coupling, and running a smart test suite that only runs tests for affected engines. Initial velocity dips ~6 weeks but at six months engines enable parallel work, easier refactors, and straightforward extraction to separate services.
AI-written summary · about
chapters (23)
- 0:00Intro
- 0:35Potato Gems
- 2:02Rails Architecture
- 2:40Project Goals
- 3:56Success
- 4:06Rails Engines
- 6:31Rails App Architecture
- 9:33Social Admin Engine
- 11:29Scheduling Engine
- 14:39Getting Started with Engines
- 15:17Engine Templates
- 16:57Selfcontained engines
- 17:23Table name spacing
- 18:43Migrations
- 19:30Migrations Only
- 20:09Testing In Isolation
- 20:53Engines The Right Way
- 21:09Circular Dependencies
- 21:49Active Record Associations
- 26:42Circular Dependencies and Engines
- 28:41Using Engines
- 30:03Summary
- 30:28Questions
related talks
32mHow I architected my big Rails app for success!
33mRefactoring Towards Component-based Rails Architectures
35mWrangling Large Rails Codebases
42mHow Rails fosters a diverse and competitive tech ecosystem in the era of big tech
51mRails Engines Patterns
44mBuild to Last...
20mRuby Summer of Code - Rails 3 Mountable Apps
30mRails Sojourn: One Man's Journey
