Node.js

Technology, mechanism and ideas.

ejs-cli を ES6 対応してみた

コマンドラインで使えるテンプレートエンジンを探していたのですが、手頃なものとして ejs-cli があったのでこれを採用してみました。ただし、かなり古いツールだったため、近代化を目的にコードを ES6 に対応させました。コマンドラインで使用する際、JSON を手書きするのはつらいので、YAML や環境変数からもデータを読み込めるようにしました。また、JSON に構文エラーがある場合には、より詳細なエラーメッセージが表示されるよう改良しています。

» 続きを読む

TransformStream の出力側のストリームは明示的に閉じる

`TransformStream` は `ReadableStream` と `WritableStream` の両方を持っています。名前の Read と Write はストリームの使用者(consumer)から見たものなので、実装する側から見ると逆になって直感的ではないのですが、`WritableStream` が前段のストリームからのデータを受け取り、`ReadableStream` は後段のストリームにデータを受け渡します。

» 続きを読む