# Engines, Rails App architecture in OpenSource context

**URL:** <https://www.ruby-forum.com/t/engines-rails-app-architecture-in-opensource-context/181251>\
**Category:** Rails\
**Created:** [January 8, 2010, 6:42am UTC](https://www.ruby-forum.com/t/engines-rails-app-architecture-in-opensource-context/181251 "2010-01-08T06:42:03Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![vzmind](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/v/4af34b/32.png) [@vzmind](https://www.ruby-forum.com/u/vzmind)\
**Post date:** [January 8, 2010, 6:42am UTC](https://www.ruby-forum.com/t/engines-rails-app-architecture-in-opensource-context/181251/1 "2010-01-08T06:42:03Z")

</div>

Hi,

I have posted the following message on Rails Engines forum but as there  
is no activity their (strange isnt it?) I re-post it and extend it here.

Here we go:

[Engines, Rails App architecture in OpenSource context] EXTENDS  
[Modularity, engines and loading:  
[Modularity, engines and loading - Engines - Ruby-Forum](http://www.ruby-forum.com/topic/201694#878262)]

I am working on [blankapplication.org](http://blankapplication.org) (an OpenSource CMS 2.0 for the  
moment but a service mashup plateform slowly slowly). We would  
like to add an extension behaviour to it as it is done on Spree. I  
thought initially to plug our new addons using engines but I came to a  
loading problem: how can I override controllers/models/views from the  
main app/ by those present in the engines. The native behaviour is just  
the opposite: you override controllers/models/views from the engine in  
the main app/.

As far as I have understood on Spree, the kernel is also embeded in a  
Spree Extension (kind of engines in fact). Consequently, when you tune  
your Spree you can make it directly from the main app/ folder and  
…override engines parts … or simply add you own extension.

OK

Does anybody have an idea about that. Some french ppl told me  
([ModularitÃ©, engines et override - FR - Ruby-Forum](http://www.ruby-forum.com/topic/201695#878314)) to follow that way,  
putting BlankApplication in a home-made engine stuff. Radiant and typo  
also seems to go that way.

If anybody ever used/install/try them or as been through this “Extension  
topic”, could he give me some keys (links, book, use case, plugins or  
just “Hi man, you are on tricky subject. All the best!!!”)

## Cheers,

Vzmind
