Meet Jail : it puts all your jquery plugins (or any other assets) in Rails, with just one click!
gem 'jail', :group => "development"
mount Jail::Engine => "/jail"
Chose a plugin, follow the link, Install. You're done.
Oh wait you might have to add :
And if you're not happy with the actual set of Jquery plugins proposed. Add your own!
module Jail LOGIN = 'login:password' #optional Jail::Github.add_githublist(Rails.root.join("config/jail.backboneplugins.yml")) Jail::Github.add_githublist(Rails.root.join("config/jail.whatever.yml")) end
Buth the list is bound to grow quickly.
While waiting for a bin/jail feature:
rails console > Jail::Github.find("name", "repo").install
But it must exist in the yaml file !!!
The list of plugins are in a yaml file : config/jail.jqueryplugins.yml Add more plugins and pull a request! Would it be better to have them in the db ?
Why an Engine ?
Other approaches where :
- create a gem for each jquery plugin. But that means updating the gem with the latest release of each plugin and nobody wants to keep track of dozens of repos.
- Do a generator instead but, while the thought came to me while writing this gem, I didn't find any remote feature in Thor (may be wrong though since rails templates has it). update : it has one (of course)!
- plugin installed? (check file existence)
- plugin outdated? (overkill ?)
This project rocks and uses MIT-LICENSE.