Introduction
A Rails plugin is either an extension or a modification of the core framework. Plugins provide:
- a way for developers to share bleeding-edge ideas without hurting the stable code base
- a segmented architecture so that units of code can be fixed or updated on their own release schedule
- an outlet for the core developers so that they don’t have to include every cool new feature under the sun
Examples of plugin usage include an ‘acts_as_taggable’ mixin for ActiveRecord objects (makes tagging trivial), ‘file_column’ for ActiveRecord (makes file uploading and image resizing easy), and ‘globalize’ (adds multilingual and internationalization support to Rails).
Further Reading
- PluginsDiscussion
- SomeImportantPluginNotes – Check your rails version before you start
- PluginsForDummies http://www.usome.com? shows the essential Ruby idea behind plugins.
- Now there are some wiki tutorials on writing plugins HowTosPlugins
- If you wrote some code or found it somewhere and you don’t know how to put it into Plugins – PluginRequests
Plugin Documentation
To find out how to use a newly installed plugin navigate to your project directory and issue the following command:
rdoc --op doc/rdoc .
this will generate complete documentation for your project, including the installed plugins it uses. You can then view the html version of this documentation by pointing your browser at yourApp/doc/rdoc.
Plugin Directory
A searchable plugin database
and RailsLodge plugin directory is also available.
Plugin Repositories
svn://rubyforge.org/var/svn/expressica/plugins/
http://soen.ca/svn/projects/rails/plugins/
http://technoweenie.stikipad.com/plugins/
http://svn.techno-weenie.net/projects/plugins/
http://svn.recentrambles.com/plugins/
http://opensvn.csie.org/rails_file_column/plugins/
http://svn.protocool.com/public/plugins/
http://tools.assembla.com/svn/breakout/breakout/vendor/plugins/
http://svn.pragprog.com/Public/plugins/
http://source.collectiveidea.com/public/rails/plugins/
https://secure.near-time.com/svn/plugins/
http://svn.inlet-media.de/svn/rails_extensions/plugins/
http://svn.viney.net.nz/things/rails/plugins/
http://svn.hasmanythrough.com/public/plugins/
http://svn.shiftnetwork.com/plugins/
svn://caboo.se/plugins/
http://svn.6brand.com/projects/plugins/
http://shanesbrain.net/svn/rails/plugins/
svn://errtheblog.com/svn/plugins/
http://svn.nkryptic.com/plugins/
http://svn.thoughtbot.com/plugins/
http://svn.webwideconsulting.com/plugins/
http://invisible.ch/svn/projects/plugins/
svn://rubyforge.org/var/svn/enum-column/plugins/
http://streamlinedframework.org:8079/streamlined/plugins/
svn://dvisionfactory.com/rails/plugins/
http://mattmccray.com/svn/rails/plugins/
svn://rubyforge.org/var/svn/cartographer/plugins/
http://www.svn.recentrambles.com/plugins/
http://tanjero.com/svn/plugins/
http://filetofsole.org/svn/public/projects/rails/plugins/
http://topfunky.net/svn/plugins/
http://svn.joshpeek.com/projects/plugins/
svn://rubyforge.org/var/svn/agtools/plugins/
http://svn.aviditybytes.com/rails/plugins/
http://beautifulpixel.textdriven.com/svn/plugins/
http://mabs29.googlecode.com/svn/trunk/plugins/
http://www.codyfauser.com/svn/projects/plugins/
http://craz8.com/svn/trunk/plugins/
http://sean.treadway.info/svn/plugins/
http://svn.thebootstrapnation.com/public/plugins/
http://www.mattmccray.com/svn/rails/plugins/
svn://rubyforge.org//var/svn/validaterequest/plugins/
http://sprocket.slackworks.com/svn/rails/plugins/
http://svn.simpltry.com/plugins/
http://svn.elctech.com/svn/public/plugins/
http://xmlblog.stikipad.com/plugins/
http://www.xml-blog.com/svn/plugins/
http://svn.toolbocks.com/plugins/
http://thar.be/svn/projects/plugins/
http://code.teytek.com/rails/plugins/
http://www.infused.org/svn/plugins/
svn://rubyforge.org/var/svn/apptrain/trunk/vendor/plugins/
http://s3cachestore.googlecode.com/svn/trunk/plugins/
http://sbecker.net/shared/plugins/
http://opensvn.csie.org/macaque/plugins/
http://svn.designbyfront.com/rails/plugins/
svn://rails.bleedingtrends.com/
http://svn.rails-engines.org/plugins/
http://dev.fiatdev.com/svn/plugins/
http://john.guen.in/svn/plugins/
http://www.redhillonrails.org/svn/trunk/vendor/plugins/
svn://rubyforge.org/var/svn/actsdisjoint/plugins/
http://ajaxmessaging.googlecode.com/svn/trunk/plugins/
http://mod-i18n.googlecode.com/svn/trunk/plugins/
svn://majakari.net/public/rails/plugins/