独自のNPMパッケージを公開する🎉
4976 ワード
注:驚くべきボイラープレートがありますnpm modules . このポストは私がそれを設定することから学んだことに基づいています.
NPMは最近JavaScriptライブラリの事実上のレジストリになっています.特に反応、角度と他のフロントエンドライブラリは、ウェブとノードを支配しています.サーバー側を引き継いでいるJS、NPMパッケージは、これまでより人気があります.多くの場合、我々は驚くべきユーティリティをインポートしますtypy , sugar 我々のコードで、どんな面倒もなしで彼らを利用してください.
しかし、今まであなた自身のユーティリティ/ライブラリを書くことについて疑問に思って、NPMにそれを公開するには、世界全体と一緒にどこでも再利用することができますか?はいなら、それから読み続けてください.✨
このポストでは、次のセクションを通過します.
なぜ?
あなたが複数のプロジェクト間で作業している場合は、しばしば自分で複数のプロジェクトで簡単なことを繰り返す見つける.例は、あなたの好ましい方法で日付を解析して、それをフォーマットするでしょう.ほとんどのDEVSはちょうど1つのプロジェクトからコードをコピーして、それがコードのいくつかの線であるので、もう一つでそれを使用します.しかし、より良いアプローチは、そのコードを抽出し、任意のプロジェクトからそれにアクセスできるように、共通の場所に配置することです.NPMは理想的で、成長する生態系であり、自由に使える.それで、NPMパッケージとしてあなたのすべての再利用可能なコードを発表することはあなたを長期的に助けます.
コードがどんなに小さくても、1行か1000行であれば、パッケージとして発行し、複数のコードベースで簡単に消費することができます.
また、図書館の著者になる.どのようにクールです!😎
公表する手順
出版は、通常、簡単なプロセスです.code => test => publish => revise code => test => publish new version ...
エントリー
新しいディレクトリを作成し、以下のコマンドを端末から入力します.
npm init
あなたのパッケージの意味のある名前と適切な詳細を入力します.これはpackage.json
あなたに.すべてのNPMパッケージが必要main
キー.これはライブラリへのエントリポイントを定義します.デフォルトではindex.js
しかし、あなたはあなたのエントリポイントが欲しいものは何でも変更できます.
バベルまたはバンドルベースのライブラリでは、エントリポイントは通常、build dirになります.
ソース
あなたが小さな図書館を書いているならば、あなたはすべてのコードを入れることができますindex.js
. しかし、より頻繁に、我々は我々のコードを要約して、それを別々のファイルに置きます.理想的なアプローチは、すべてのソースコードをsrc
dir .
これは、1つのライブラリから別のが、現在のソースコードのための最も広く使用され、推奨セットアップです.
出版は、通常、簡単なプロセスです.
code => test => publish => revise code => test => publish new version ...
エントリー
新しいディレクトリを作成し、以下のコマンドを端末から入力します.
npm init
あなたのパッケージの意味のある名前と適切な詳細を入力します.これはpackage.json
あなたに.すべてのNPMパッケージが必要main
キー.これはライブラリへのエントリポイントを定義します.デフォルトではindex.js
しかし、あなたはあなたのエントリポイントが欲しいものは何でも変更できます.バベルまたはバンドルベースのライブラリでは、エントリポイントは通常、build dirになります.
ソース
あなたが小さな図書館を書いているならば、あなたはすべてのコードを入れることができます
index.js
. しかし、より頻繁に、我々は我々のコードを要約して、それを別々のファイルに置きます.理想的なアプローチは、すべてのソースコードをsrc
dir .これは、1つのライブラリから別のが、現在のソースコードのための最も広く使用され、推奨セットアップです.
ES 6 -Babel
リンギングESLint
コード整形Prettier
バンドルWebpack
テスト
あなたのコードが期待通りに動作するように徹底的なテストをする必要があります.様々なテスト設定があります.どちらのスーツもベストが必要です.しかし、広く使用されるテストセットアップは
あなたが私が巨大なファンであるコードカバレッジも必要とするならば、.Istanbul つのJavaScriptプロジェクトのための最高のカバレッジツールです.私は絶対にそれが大好きです.
出版
一旦あなたのコードが徹底的にテストされるならば、それは発表される準備ができています.
npm login
ユーザー名とパスワードを入力します.あなたがすべての発行のためにそれを入力する必要がないように、これは資格情報を保存します.エディット:PLnpm's 2FA あなたのパッケージを中で言及されるようにハッキングされるのを防ぐために.
npm publish
これはNPMレジストリにパッケージを公開します.一旦発行が完了すると(1分以内で)、あなたのパッケージをリンクでチェックすることができますhttps://www.npmjs.com/~{username}/{package-name}
.パッケージに変更を加えたい場合は、バージョン番号を変更して再度発行しなければなりません.
NPMコマンドを使用してください
npm version patch
, npm version minor
and npm version major
手動で更新するのではなく、自動的にバージョンを更新します.これらのコマンドはsemantic versioning .ボイラプレート
私は、私自身のいくつかのNPMパッケージを持って、NPMパッケージを作成するためにすべてのベストプラクティスに十分にオンラインで研究して、特にこれのためにボイラープレートをつくりました.それはすべての事前セットアップを持っていると秒単位で開始することができます.JavaScript Utilパッケージを書いているなら、それはあなたのためのボイラープレートかもしれません.
ボイラープレートへのリンクnpm-module-boilerplate
あなたは素晴らしいです!素晴らしい一日を!🎉
Reference
この問題について(独自のNPMパッケージを公開する🎉), 我々は、より多くの情報をここで見つけました
https://dev.to/flexdinesh/publish-your-own-npm-package---5b71
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
Reference
この問題について(独自のNPMパッケージを公開する🎉), 我々は、より多くの情報をここで見つけました https://dev.to/flexdinesh/publish-your-own-npm-package---5b71テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol