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
Bower
Search
Lucas Mazza
September 25, 2013
Programming
200
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Bower
Apresentação feita no encontro do 7Masters sobre JavaScript.
Lucas Mazza
September 25, 2013
More Decks by Lucas Mazza
See All by Lucas Mazza
OpenAPI e Elixir (e qualquer outra linguagem)
lucas
0
120
Ecto sem SQL
lucas
0
410
Feature Toggles! - Elixir
lucas
3
610
Feature Toggles! - Ruby
lucas
2
380
Testes automatizados e a prática antes da teoria
lucas
0
430
Circuit Breakers em Ruby
lucas
1
420
The Zen and Art of Refactoring
lucas
4
1k
Minitest: voltando ao básico sobre testes
lucas
1
430
10 coisas que eu gostaria de ter aprendido mais cedo
lucas
67
5.4k
Other Decks in Programming
See All in Programming
Datadog LLM Observabilityで実現する 安全なLLM Usage 管理
3150
0
130
Hatena Engineer Seminar #37「言語モデルの活用に関する研究」
slashnephy
0
360
不変条件と整合性境界—ビジネスが決める設計判断と実現パターン / Invariants and Consistency Boundaries
nrslib
14
5.9k
気圧・高度・GPSを記録&可視化するアプリ「Koudo」を作った話
hjmkth
1
330
OSもどきOS
arkw
0
600
PHPで使える日時の表現と、その知り方 #frontend_phpcon_do
o0h
PRO
0
270
LLM本来の能力を解き放つサンドボックス技術とAI民主化への適用
yukukotani
3
4.6k
任せる範囲はこう広がった / How the Scope of AI Delegation Has Expanded
nrslib
0
190
肥大化するレガシーコードに立ち向かうためのインターフェース分離と依存の逆転 / JJUG CCC 2026 Spring
hirokunimaeta
0
640
AI駆動開発を妨げる技術的負債の解消アプローチ / ai-refactoring-approach
minodriven
15
7.9k
A2UI という光を覗いてみる
satohjohn
1
160
TypeScript+Orvalで実現する型安全かつ堅牢でスケーラブルなマルチチャネル通知基盤 / TSKaigi Night talks ~after conference~
d0riven
0
370
Featured
See All Featured
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
170
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
740
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.4k
Rails Girls Zürich Keynote
gr2m
96
14k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.1k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
BBQ
matthewcrist
89
10k
Building an army of robots
kneath
306
46k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
850
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
210
Transcript
Bower a package manager for the web
@lucasmazza
None
disclaimer esta não é uma introdução prática ao Bower
Nando Vieira @ Guru SP Slides @ fnando.me/np Post @
fnando.me/nq
"Bower is a package manager for the web. It offers
a generic, unopinionated solution to the problem of front-end package management."
None
formato padrão para distribuição
versão (tag) URL de um repo commit diretório standalone
manifesto para definir dependências
module#518331e7d5 vendor/assets/components/module jquery-pjax#1.7.3 vendor/assets/components/jquery-pjax ᵋᴷᴷ jquery#2.0.3 momentjs#2.1.0 vendor/assets/components/momentjs jquery#2.0.3 vendor/assets/components/jquery
Distribuindo seu código em pacotes
Semantic Versioning http:/ /semver.org/
Defina os entrypoints Use o ‘main’ para definir os arquivos
que o seu pacote expõe
Defina os entrypoints Disponibilizar versão precompiladas e minificadas não é
nada mal :)
$ bower install jquery jquery-migrate.js jquery-migrate.min.js jquery.js jquery.min.js jquery.min.map
Não empacote tudo Remova arquivos desnecessários do seu pacote com
a opção do ‘ignore’.
$ bower install bootstrap $ ls bower_components/bootstrap | wc -l
28 ಠ_ಠ
documentação travis.yml & amigos exemplos LESS, CoffeeScript, SCSS Gruntfile, Rakefile,
Makefile ✗
JS/CSS imagens e fontes LICENSE README.md CHANGELOG.md ✓
Teste o seu pacote $ bower install ~/code/github/thing $ ls
bower_components/thing
Use e abuse do Git stable branches para bugfixes version
tags como referência
Utilizando Bower no seu projeto
Pacotes no seu VCS nem todos desenvolvedores (e servers) precisam
ter Node.JS
Integre o Bower ao stack da sua equipe
Ruby / Rails Sprockets 2.10 +
AMD rpflorence/bower-import
Grunt stephenplusplus/grunt-bower-install
Usando outra coisa? Contribua com novas ferramentas
Obrigado! https:/ /twitter.com/lucasmazza https:/ /speakerdeck.com/lucas