Help us understand the problem. What is going on with this article?

bowerにパッケージを公開する方法

More than 5 years have passed since last update.

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コマンドが成功すれば、即時反映される模様です。

Quramy
Front-end web developer. TypeScript, Angular and Vim, weapon of choice.
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away