Home
Plugin is a straightforward plugin manager for Ruby. It can handle RubyGems, Rolls and Ruby’s standard site locals. It is both more flexible and more robust the using Gem.find_files or searching the $LOAD_PATH manually.
The Plugin library does two significant things. First it designates a location in the ruby $LOAD_PATH for plugins. Second it provides an easy to use function for finding plugin scripts stored in the designated location.
Place all plugins for your project in lib/plugins//. Or if you have altered the load path for your project, you can place them in the alternate location, /plugins//. (Note: Altering the conventional load path should be avoided whenever possible.)
To find plugins, simply provide a glob to the Plugin.find function, and it will return all matches found within current and/or most recent versions of libraries.
For example, a common use case for a pluggable application is to require all the plugins found:
require 'plugin' Plugin.find('myapp/*.rb').each do |file| require(file) end
Alternately you might load plugins only as needed. For instance, if a command-line option calls for it.