Web Componentsを作成していると、いろいろと読み込むファイルが大きくなり、これをそのままGitHubにアップしてしまうとCloneするときの時間がやばいことになるので、パッケージマネージャー Bower を使うことにしました。(はじめから使うべきでした。)
開発中のアプリのディレクトリの中に、利用したい他のプロジェクトのリソースなどを記述したbower.json
を置いておけば、コマンド一発でこれらをウェブからダウンロードしてローカルに展開してくれます。GitHubで公開されているリポジトリなどを簡単に指定することができます。
ダウンロードされたリソースはすべてbower_components
ディレクトリ内に展開されます。gitでアプリの開発を管理している場合は、このフォルダを.gitignore
に登録しておくと良いかもしれません。
Bowerについての詳細は下記のページで勉強しました。とてもわかりやすいので是非参照してください。
bower.json に最低限書くと良いこと
以下のように書くと、dependencies
に記述されたリポジトリからファイルがダウンロードされ、bower_components
フォルダ内に配置されます。
{ "name": "My App", "private": true, "dependencies": { "polymerlibs": "Polymer/polymer#^0.3.5", "griddles-ui-card": "griddles-ui-card/griddles-ui-card#master" } }
GitHubにホスティングされているリポジトリであれば、事前登録等は必要なく、上記のように書くだけで良いそうです。記入におけるルールとして、
"polymerlibs": "Polymer/polymer#^0.3.5"
のように書くと、リポジトリhttps://github.com/Polymer/polymerのリリースバージョン0.3.5
が、polymerlibs
というフォルダ名で、bower_components
内にコピーされます。最新の内容をクローンしてきたい場合には
"griddles-ui-card": "griddles-ui-card/griddles-ui-card#master"
のように、リポジトリ名の後に#master
を付記します。
bower.json
には、他にも便利な設定項目が多くありますが、まずはこのあたりを押さえておけば良いかなと思います。
Chrome Dev Editor で Bower を使う
CDE((Chrome Dev Editor)では、ファイルパネル上でbower.json
を含むフォルダを右クリックすると、Bower関連のメニューが表示されます。
Bower Install
やBower Update
をクリックすると、bower.json
の内容に従って各種ライブラリのファイルをダウンロードしてくれます。
Bowerの導入作戦
- 今後開発する Web Components, Custom Elements やこれらを用いたアプリにはBower管理を採用する
- これまで開発したものについてもなるべく早くBowerに対応させる