npm パッケージとして配信するブログを作ってみた : @neos21/neos-npm-blog
npmjs.com
は npm パッケージをホスティングするレジストリである。アカウント登録さえすれば誰もが npm パッケージをアップロード・公開できる。
ということは、npm パッケージの体裁さえ取っていれば、極端な話、好きなファイルを npm publish
して、npmjs をホスティングサイトのように使えるのではないだろうか。
…と思い、npm パッケージとしてブログを配信するというネタを思い付いた。
実際に作ってみたのが、@neos21/neos-npm-blog
である。
- @neos21/neos-npm-blog - npm
- GitHub - Neos21/neos-npm-blog: Neo's npm Blog : npm パッケージとして配信するブログの試みです。
仕組み
@neos21/neos-npm-blog
の仕組みはこうである。
- ブログ配信者 (僕) は、本パッケージ内にブログ記事を構成する Markdown ファイルを格納し、
npm publish
する。 - ブログの読者は、本パッケージをグローバルインストールする。
- ブログの読者は、本パッケージのコマンドを実行して記事を読める。
つまり、npm publish
でアップロードするパッケージの一部として、記事データもアップロードしてしまおう、ということだ。
では早速「npm パッケージ形式のブログ」を読んでいただこう。
インストール方法
まずは @neos21/neos-npm-blog
を npm でグローバルインストールする。
$ npm install -g @neos21/neos-npm-blog
コマンド
グローバルインストールすると、neos-npm-blog
というコマンドが使えるようになる。
$ neos-npm-blog
引数なしでコマンドを実行すると、npmjs 上に最新バージョンが Publish されていないかを確認し、インストールされているバージョンの最新記事をコンソール表示する。
インストールしてあるパッケージの自動アップデートなどはしないので、そこは各自でアップデートしてほしい…。
記事のファイルがどれだけあるのかは、以下のコマンドで確認できる。
$ neos-npm-blog list
$ neos-npm-blog ls
このパッケージでは、記事データは一律 YYYYMMDD.md
という名称で統一している。
過去記事を表示したい場合は以下のように日付 (ファイル名) を指定する。
$ neos-npm-blog show 20180428
$ neos-npm-blog show 20180428.md
末尾に .md
を付けても付けなくても OK。
一応ヘルプも用意した。
$ neos-npm-blog --help
$ neos-npm-blog help
以上
ネタとしては面白いかな?と思って作ってみた。ブログとしては本気で更新するつもりはないので、このまま放置かな…w