smart stuff

[ANN] Rails Engines + Login Engine
02 Nov 05 - http://www.approximity.com/cgi-bin/blogtariAgile/index.rb/Ruby/Rails/RailsEnginesLogonEngines.rdoc
James Adam posted this to the rails-ML.

Announcing the birth of a bouncing plugin baby boy:

rails-engines.rubyforge.org/

… at which you can digest all manner of propaganda and rdoc.… well, docs. You might particularly want to watch the demo movie:

rails-engines.rubyforge.org/movies/engines_intro.mov

Any mirrors of this would be greatly appreciated! Below is the hype:

What are Rails Engines? Rails Engines are a way of dropping in whole chunks of functionality into your existing application without affecting any of your existing code. The could also be described as mini-applications, or vertical application slices - top-to-bottom units which provide full MVC coverage for a certain, specific application function.

Why do I want this? Rails Engines are advantageous over normal generators because the do not insert any code into the /app directory, but remain isolated within the plugins directory of your application. Furthermore, you can override individual controller actions and views/partials within your application as needed, whilst leaving the original Engine files intact.

OK, I need an example As an example, the Login Engine (heavily based on the Salted Login Generator, all kudos to those guys) provides a full user login subsystem, including:

parts of your application;

How do I get such devilry? Engines can be distributed using the same mechanisms as regular Rails lugins (since to the Rails plugin system they appear to be almost the same thing). If you are developing engines yourself for use across multiple projects, linking them as svn externals allows seamless pdating of bugfixes across multiple applications.

The Rails Engines plugin and all other engines should be listed on the Plugins page in the wiki, so that the bleeding-edge script/plugin command can be used to install them painlessly.

Currently they are hosted on the OpenSVN servers at opensvn.csie.org/rails_engines/plugins, although a more permanent home would be make me very very happy.… </beg>

wiki.rubyonrails.com/rails/pages/Plugins