bower([http://bower.io/]) はtwitterが作成しているwebapp向けのパッケージ管理ツールです。
bowerへのパッケージ公開はかなり簡単に出来てしまいます。必要なものはgitのレポジトリのみです。
(今日時点(version 1.1.0時点)では、bowerにパッケージ公開するためにアカウント作成等は必要ないようです)
bowerのインストール
インストールしていなければ、下記のコマンドでインストールしてください。
npm -g install bower
githubにプロジェクトを作成する
解説不要ですね。ここでは、ユーザ名myAccount、プロジェクト名myProjectで作成したとしましょう。
bower.jsonを作成する
プロジェクトディレクトリ配下にbower.jsonを作成します。node.jsにおけるpackage.jsonとほぼ同様の書式です。
例:
{
"name": "my-project",
"version": "1.0.0",
"main": "myProject.js",
"ignore": [
".jshintrc",
"package.json",
"index.js",
"test/**"
],
"dependencies": [
"jquery": "latest"
]
}
必須となるのは、name, version属性のみです。versionはセマンティックバージョン[http://semver.org/] に従って付与する必要があるみたい。
mainには、このパッケージをインストールしたユーザへのエントリポイントとなるファイル名を指定します。JavaScriptのプロジェクトなら、プロジェクトフォルダにおけるライブラリスクリプトへのパスを記載しておけばよいでしょう。
ignoreは、公開する必要がないファイルの指定を行います(上記ではnpm系やテスト関連のファイルを除外する設定をしています)
リリース準備
レポジトリにリリースしたいバージョン名でtagを作成しておく必要があります(bowerはパッケージのバージョン特定にgitのtagを用いている模様)。
git commit
git tag v1.0.0
git push origin v1.0.0
タグ名は, v(バージョン番号)とするのが正しいようです(ドキュメントからの確認ではないですが、angular.js等にならいました)。
いざ、リリース!
bowerのregisterコマンドを利用します。引数1にパッケージ名称(bower.jsonのname属性値), 引数2にgitのエンドポイントを指定します。
bower register my-project git://github.com/myAccount/myProject.git
コマンドを実行すると、
Registering a package will make it visible and installable via the registry.
Proceed (y/n)?
と入力を求められるので、素直にyを入力しましょう
確認してみる
bower serach パッケージ名
や
bower info パッケージ名
や
bower install パッケージ名
を使って確認してみましょう。registerコマンドが成功すれば、即時反映される模様です。