Books
- Component-Based Rails Applications by Stephan Hagemann
Talks
- Wrangling Large Rails Codebases by Stephan Hagemann, 2012
- Rails Engines in Large Apps by Enrico Teotti, 2013
- How I architected my big Rails app for success! by Ben Smith, 2013
- Component-based Architectures in Ruby and Rails by Stephan Hagemann, 2013
- Feature Flagging with Ruby on Rails Engines by Enrico Teotti, 2014
- Refactoring Towards Component-based Rails Architectures by Stephan Hagemann, 2014
- Get started with Component-based Rails applications! by Stephan Hagemann, 2015
Blog Posts
- Rails Contained: A Container for Web Application Development and Deployment by Mike Barinek, February 21, 2012
- Unbuilt Rails Dependencies: How to design for loosely-coupled, highly-cohesive components within a Rails application by Mike Barinek, February 21, 2012
- Migrating from a single Rails app to a suite of Rails engines by Stephan Hagemann, March 13, 2012
- Leave your migrations in your Rails engines by Ben Smith, May 8, 2013
- Rails autoloading for your gem by Stephan Hagemann, May 29, 2013
- Moving db tables between Rails engines by Ben Smith, June 7, 2013
- Building and maintaining a large Ruby on Rails application for 3 years by Enrico Teotti, July 16, 2013
- Faking authentication for capybara tests within a Rails engine by Ben Smith, September 4, 2013
- Writing Rails engine rspec controller tests by Ben Smith, September 14, 2013
- Maintainable and Scalable Systems with Rails Engines by Kevin Rockwood, December 10, 2013
- RubyMine 6 for component-based Ruby and Rails applications by Stephan Hagemann, December 13, 2013
- Rails 4 Engines by Brian Leonard, February 11, 2014
- Options for Admin Engines in Component-based Rails Applications by Stephan Hagemann, June 4, 2014
- Deploy parts of a Ruby on Rails application by Enrico Teotti, August 4, 2014
- Gemfile hierarchy in Ruby on Rails component based architecture by Enrico Teotti, November 19, 2014
- Merits of strict separation in component-based Rails applications by Stephan Hagemann, November 20, 2014
- Reduce memory footprint requiring portions of your component based Rails application with Bundler by Enrico Teotti, January 27, 2015
- Physical separation in Rails apps by Andrzej Krzywda, September 14, 2017
- Rails components — neither engines nor gems by Paweł Pacana, September 14, 2017
Tools
- transdeps - Gem to find inconsistent dependency versions in cbra apps (Check out how to bump the version of a dependency across all components with this gist)
- cobratest - Gem to run tests in cbra app based on git changes in components
- cobradeps - Gem to print dependency graph of cbra apps
Sample Applications
- The Next Big Thing - Small sample app showing all the mechanics of Component-based Rails
- Rails Engines Example - Rails engines example by Task Rabbit
- CBRA book code - Code to the Component-Based Rails Applications book, which includes many componentized versions of one sample app
Mailing Lists / Forums
- Components in Rails Google Group - largely inactive at the moment, but significant public archive with ~90 members
Please email stephan@stephanhagemann.com to have resources added to this list!