Panda Noir

JavaScript の限界を究めるブログでした。最近はいろんな分野を幅広めに書いてます。

npm

git でブランチを切り替えたとき、node_modules を更新する (キャッシュ機構付き)

結論: 以下を .git/hooks/post-checkout に追加 #!/bin/sh PREV_BRANCH=`git reflog show -q | head -n1 | awk '{print $6}'` CACHE_DIR=~/.cache/my_project_node_modules mkdir -p $CACHE_DIR prev_node_modules_cache="$CACHE_DIR/$(git show $PREV_BRANC…

npm publishの練習をするならverdaccio + docker

みなさん、npm publish、怖くないですか??? npmでライブラリ公開したときに踏みつけた地雷7つ - Panda Noir npmでアップデートするときに踏みがちな3つの落とし穴 - Panda Noir 僕はもうトラウマだらけです。怖いです。しかし、いつかは克服しなければい…

dependencies と devDependencies の使い分け

混乱しがちだったのでまとめました。 なぜ使い分けたいのか? ウェブアプリケーション開発においては、本番環境で不要なパッケージをインストールせずに済むからです。npm には dependencies に書かれたパッケージのみインストールする機能があるので、これ…

localStorageを意識せずに使えるようなライブラリを作りました。

localStorageをgetItemしたりsetItemしたりとかめんどくさいですよね?そこで、はじめに設定したら、以降はlocalStorageを全く意識する必要がなくなるライブラリを作りました。 (イラスト: 複数のPCサーバーのイラスト | illalet(イラレット))

これでもう怖くない!npm versionで失敗しないための3つのポイント

npm versionコマンドの挙動がよくわからない tagがズレた CHANGELOG.mdをいつコミットすればいいのか dist/の生成タイミング などなど、npmパッケージのアップデートはややこしすぎます。毎回不安になるのでポイントをまとめました。

UnitaryJS 0.1.2公開しました

今回のアップデートは大きな変更点が2つあります。 Point.fromPolar()の追加 GroupがfillStyleなど描画用のプロパティを持てるようになった

yarn-or-npmが有能すぎた

これこそ全人類が求めていた答えだ(確信)

文字列からミリ秒を計算するライブラリtime-f作った

setIntervalの秒数指定の場面など、ミリ秒で指定する場面は多いです。これをもう少しリーダブルにかけると嬉しいですよね?そこで今回は「time-f」というライブラリを作りました。

Closure Compilerが遅すぎるので早くする

google-closure-compilerここにガッツリ書いてありましたが、今まで気づいていませんでした。だいたい今まで8秒かかっていたところが2秒に縮まりました。4倍早くなった計算です。

npm-scriptsはどうやらbashらしい

500記事目ですが、そんなこと関係ないです。普通にいつもどおり書きます。 詳しいドキュメントがみつからなかったのがアレですが、少し調査した結果を報告いたします。

Can't load the js.babel riot parser: Error: Cannot find module 'babel-core' と出たときの解決方法

riotのプリコンパイルで $: riot --type babel ./ ./ Error: Can't load the js.babel riot parser: Error: Cannot find module 'babel-core' みたいなエラーが起きてしばらくの間悩んでたのでメモ。

npmでライブラリ公開したときに踏みつけた地雷7つ

かなり後悔してる。とりあえず現時点で失敗したと思った点まとめてます。今後npmでライブラリ公開したいという人が同じ轍踏まないことを願います。 アップデートでも色々やらかしたのでまとめました npm versionコマンドで失敗しないためのポイントもまとめ…