README.md in bower_vendor-0.0.4 vs README.md in bower_vendor-0.0.5
- old
+ new
@@ -1,10 +1,26 @@
# BowerVendor
-Rake tasks to manage vendor assets for rails application
+Simple rake tasks to manage vendor assets for rails application
using bower. This gem is inspired by bower-rails.
+Reason for the existence of this gem is to have improved assets control, which is lacking
+in bower-rails. This gem not only fetches assets using bower, but also contains logic to
+maintain actually used assets in "vendor/asests" so that they can be committed safely into
+repository.
+
+This has various benefits
+- Removes bower dependency from deploy
+ * Safe-guarding deplpy from unavailability of bower central repository
+ * Faster deploy
+ * no need to have node/bower/etc. installed in deployed machine
+- Versioned assets, allowing safer upgrading of them (and safe rollback to old versions)
+ * This allows that not all parts of the application (or engines) are requierd to be upgraded
+ to latest vendor asset versions at once
+- Assets are available always
+ * Just clone repository and it's ready to use
+
# Install
Gemfile
```ruby
gem 'bower_vendor'
@@ -14,18 +30,55 @@
1) Configuration file
vendor.yml
```ruby
+jquery:
+ version: 2.1.3
+ assets:
+ - dist/jquery.js
+jquery-ujs:
+ version: 1.0.3
+ assets:
+ - src/rails.js
+lodash:
+ version: 3.0.0
+ assets:
+ - lodash.js
angular:
version: 1.3.15
- files:
+ assets:
- angular.js
+bootstrap-sass:
+ version: 3.3.4
+ assets:
+ - assets/javascripts/bootstrap-sprockets.js
+ # copy into "bootstrap" subdir in destination
+ - bootstrap:
+ - assets/javascripts/*.js
+ - assets/stylesheets/_bootstrap.scss
+ - assets/stylesheets/_bootstrap-sprockets.scss
+ - bootstrap:
+ - assets/stylesheets/bootstrap/*.scss
+ # copy into "bootstrap/mixins" subdir in destination
+ - mixins:
+ - assets/stylesheets/bootstrap/mixins/*.scss
+ # "*" matches all files
+ - assets/fonts/bootstrap/*
```
2) Install assets
```bash
+bundle exec rake vendor:clean
bundle exec rake vendor:all
```
Assets will be copied into vendor/assets
+
+
+# TODO
+
+- Support other more asset types
+ * curently only js and css are supported
+ * should support also fonts, etc.
+- Support more complex paths for assets