Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Introduction to Bower
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Gilles Ruppert
November 15, 2013
Programming
150
2
Share
Introduction to Bower
A very quick and cheerful introduction to Bower for the local JS meetup group
Gilles Ruppert
November 15, 2013
More Decks by Gilles Ruppert
See All by Gilles Ruppert
AngularJS: the Good, the Bad and the Ugly
gillesruppert
3
2.8k
JavaScript all the Things!
gillesruppert
1
330
Attack of the drones!
gillesruppert
1
230
Other Decks in Programming
See All in Programming
見せてもらおうか、 OpenSearchの性能とやらを!
shunta27
1
170
Feature Toggle は捨てやすく使おう
gennei
0
400
それはエンジニアリングの糧である:AI開発のためにAIのOSSを開発する現場より / It serves as fuel for engineering: insights from the field of developing open-source AI for AI development.
nrslib
1
820
How to stabilize UI tests using XCTest
akkeylab
0
150
GC言語のWasm化とComponent Modelサポートの実践と課題 - Scalaの場合
tanishiking
0
140
おれのAgentic Coding 2026/03
tsukasagr
1
120
今年もTECHSCOREブログを書き続けます!
hiraoku101
0
220
ネイティブアプリとWebフロントエンドのAPI通信ラッパーにおける共通化の勘所
suguruooki
0
230
へんな働き方
yusukebe
6
2.9k
コードレビューをしない選択 #でぃーぷらすトウキョウ
kajitack
3
1.3k
Agentic AI: Evolution oder Revolution
mobilelarson
PRO
0
220
実践ハーネスエンジニアリング #MOSHTech
kajitack
7
5.3k
Featured
See All Featured
Become a Pro
speakerdeck
PRO
31
5.9k
What does AI have to do with Human Rights?
axbom
PRO
1
2.1k
How GitHub (no longer) Works
holman
316
150k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
200
Being A Developer After 40
akosma
91
590k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.4k
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.4k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
210
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
120
RailsConf 2023
tenderlove
30
1.4k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
250
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.7k
Transcript
Bower Sane package management for the browser
What is Bower? • package manager for the web •
targets front-end • unopionated • cli and programmatic interfaces • no shared dependencies • flat dependency tree
Why bother?
Old days (install libraries) • go to http://www.jquery.com • download
latest version • copy lib folder • do the same for other libs
Old days (update lib) • go to http://jquery.com • check
whether there is a newer version • download • move to correct folder and overwrite previous lib • if broken, find old version and use that
The bower way (install) • bower search query (if you
don’t know what the package is called) • bower install jquery
The bower way (update) • bower update • if it
breaks, bower install package#version
Getting started
npm install -g bower
starting a project • bower init • same as npm
init • creates a bower.json file
finding & installing • bower search jquery • bower install
jquery • bower install --save jquery • bower install --save-dev expect
installing an existing project • bower install
useful commands • bower uninstall package_name • bower list •
bower search package_name • bower home package_name • bower prune • bower update
continued… • bower --help • bower command --help
develop with multiple packages
assume this • write project • write separate package (i.e.
mini lib?) • use 2nd package as part of 1st • 2nd package changes
–you “F***! Do I really have to push a new
version each time I do a change?!?!? I will go back to my monolith!”
Don’t despair! bower link to the rescue!
in package 2 • bower link
in 1st package • bower link package-2
Done! and no need to go back to the monolith
:)
Configuration
.bowerrc • directory • cwd • custom registry • etc
• (https://docs.google.com/document/d/ 1APq7oA9tNao1UYWyOm8dKqlRP2blVkROYLZ2fL IjtWc/edit#heading=h.4pzytc1f9j8k)
What else? • programmatic API • can be used by
build tool etc?
Thanks! @gillesruppert