bower

A package manager for the web.



installation



     1. get node
brew install node

     2. get bower
npm install -g bower

USAGE

      GET JQUERY
bower install jquery
... bower cloning git://github.com/components/jquery.git
... bower cached git://github.com/components/jquery.git
... bower fetching jquery
... bower checking out jquery#1.9.1
... bower copying ~/.bower/cache/jquery/cf68c4c4e7507c8d20fee7b5xxx
... bower installing jquery#1.9.1


      What happened?
  1. Query Twitter's Bower registry
  2. Find jQuery
  3. Clone jQuery git repo
  4. Check out the latest version (git tag)
  5. Check component.json & resolve any dependencies
  6. Copy files to local dir


RUBY ON RAILS

ON BOWER


ASSETS AS GEMS?

Kinda sucks.

ಠ_ಠ


BOWER INNIT


Create .bowerrc file in project root
{
  "directory":  "vendor/assets/components",
  "json":       "vendor/assets/components/component.json"
}
Create vendor/assets/components/component.json
{
  "dependencies": {
    "bootstrap":  "~2.3.0"
  }
}

Add asset pipeline load path in config/application.rb

config.assets.paths << Rails.root.join('vendor/assets/components')

Run the damn thing

bower install

CAVEAT DEVELOPER


Endpoint must be a git repo
Asset versions must follow semver
Current best practice is to .gitignore components/*
What about deployment?


¯\_(ツ)_/¯

Options

  • Run bower locally, scp results
  • Run bower remotely
  • Heroku, custom buildpack???

COOL SHIT I DIDNT COVER


(╯°□°)╯︵ ┻━┻


  • Bash autocompletion bower install <pkg>
  • register your own bower packages
  • use --save to add component.json dependencies

THANKS!


eddie cianci
@defeated


http://litmus.com


Made with Slides.com