Radiant Extensions - In Rails?

I have been thinking about Rails modularity quite a bit and it’s
interesting to see that there are quite a few approaches at it—Engines,
Appable Plugins, Cells, etc. John has expressed this concern on a
lacking standard.


Our very own Radiant offers extensions, and I have to say it does a fine
job of it. Actually, I had become so reliant on Radiant Extensions for
my personal app that I had almost forgotten about the Rails modularity
issue altogether. It kinda has me wondering though, that if I wanted
to take Radiant out of the mix to create a modular Rails site made up of
several sub-apps (in Django fashion or even as I already do for
Radiant), if there is a community adopted methodology for doing so.

In a way, I almost think it’d be nice if the Radiant extensions system
was its own gem (depending on Rails) so that creating extensions on a
Rails app might be just as easy. Then recently, I read about Appable
Plugins and I started to wonder if it was the same thing as a Radiant
Extension but in a purely Rails context.

Anyway, does anyone know if the Rails community is moving toward a
standard on this? While I like seeing different ideas develop I hate to
see too many take on solving the same problem in slightly different
ways. This can result in a variety of mini-frameworks having to be
installed on top of a Rails app in order to make use of even one single
components developed on top of those approaches. That’s way too much

Have any of you developed Radiant-independent Rails apps with drop in
components that are similar to Radiant Extensions? If so, what have you

The Spree project (http://spreehq.org) is using the Engines plugin.
Its working well so far but I’m not 100% sold on Engines and remain
open to other solutions.

I’ve also been considering how to implement an extensions mechanism
for Spree and I’m thinking about the Radiant extension model as one
approach. Could get complicated though to have extensions on top of
Engines on top of Rails.


Actually, the Radiant Extension approach has perfectly met my needs so
far. There are some minor things that I think could be improved, but
overall, I really like the approach used in Radiant. I’ve found it very
easy to transplant existing Rails mini-apps into Radiant Extensions
especially because the inners of an Extension are very much the same as
a Rails app.