Slide 1

Slide 1 text

Asset Management
 in Rails

Slide 2

Slide 2 text

State of the art • /vendor/assets • asset gems Ruby World JavaScript World • /vendor/assets • bower

Slide 3

Slide 3 text

So what's the problem? • Asset Gems won't package themselves • Asset Gems are always step behind official libraries • Unnecessary stuff like ruby helpers :-(

Slide 4

Slide 4 text

If only I could use 
 bower components in ruby

Slide 5

Slide 5 text

+ rails-assets.org

Slide 6

Slide 6 text

source 'https://rubygems.org' +source 'https://rails-assets.org' ! gem 'rails' ! group :assets do gem 'sass-rails' gem 'uglifier' gem 'coffee-rails' + gem 'rails-assets-bootstrap' + gem 'rails-assets-angular' + gem 'rails-assets-leaflet' end

Slide 7

Slide 7 text

application.js ! ! ! //= require_self +//= require bootstrap +//= require angular +//= require leaflet //= require_tree . application.css ! ! /* *= require_self +*= require bootstrap +*= require leaflet *= require_tree . */

Slide 8

Slide 8 text

No content

Slide 9

Slide 9 text

Is it any good? • No more vendor/assets :-) • Proper versioning :-D • Dependency resolution x-D • Just works!

Slide 10

Slide 10 text

What's the catch? • Rails Assets is centralized solution • Only tag releases are bundled to .gem files • Mixing assets definitions with gem definitions • Long gem names (rails-assets-jquery)

Slide 11

Slide 11 text

bower-rails source 'https://bower.io' ! asset "angular" asset "underscore", "~> 2.0" ! group :test, :development do asset "karma" end

Slide 12

Slide 12 text

application.js ! ! ! //= require_self +//= require bootstrap +//= require angular +//= require leaflet //= require_tree . application.css ! ! /* *= require_self +*= require bootstrap +*= require leaflet *= require_tree . */

Slide 13

Slide 13 text

We're joining forces! rails-assets + bower-rails = <3

Slide 14

Slide 14 text

Please help us! Tymon Tobolski ! [email protected] @iteamon Adam Stankiewicz ! [email protected]
 @sheerun GitHub: rails-assets/rails-assets