lernaでnpmにpublicなscoped packageをpublishする方法

hothouseという、package.jsonを更新してPRを作成するGreenkeeperのようなOSSを作る際に、
プラグイン開発用の内部I/Fを@hothouse/typesというpublicなパッケージとしてpublishしようとしたところ、失敗しました。

公開する時はnpm publish --access=publicとするだけです。(デフォルトが--access=restrictedであるため明示する必要がある)

npmで名前空間を持ったモジュールを公開する方法(scoped modules) | Web Scratch

単一のnpm packageなら--accessをつければ良いのですが、(少なくとも2.11.0時点で)lernaでpublishする際に--accessを指定できる余地がない。
ということで調べてみました。

タブ補完でpecoでnpm-scriptsをもっと超簡単に実行したい

便乗ネタです。

pecoでnpm-scriptsを超簡単に実行したい - Qiita

という素晴らしい記事が公開されたので実際に使ってみたのですが、
npm runまで打ってから「あれ、コマンドなんだっけ」と思い、入力内容を消しnrunを実行するという一手間を省略したいと思いました。
もっと超簡単に実行できるようにnpm run <TAB>でpecoが起動するようにしてみました。

ReactのNew Context APIは便利だけどreduxを使うのはやめないと思った

Reduxの新しいContext APIが発表され、2ヶ月くらいが経過した。

React’s ⚛️ new Context API – DailyJS – Medium

私は少しバージョンの古いReactを主に使っているため、しばらく情報を追わずにいたが、

Reactの新Context APIとRedux is deadはどう関係するのか? – terrierscript – Medium

React v16で実装された new Context APIを使って、Reduxへ別れを告げる - Qiita

などの記事が登場するようになったので、自分は新しいContext APIとどう向き合うのかを考えてみた。

CLIだけでReact NativeアプリをビルドしてDeployGateにデプロイする方法

こんにちは。
仕事でReact Nativeを触っているのですが、ステージング(DeployGate)へアプリを反映するときに、

  • Xcodeを起動
  • Product > Archiveを選択
  • しばらく待つ
  • エクスポート方法(Ad-Hoc)を選択
  • オプション(Code Signingに使用するアカウント)を選択
  • しばらく待つ
  • DeployGateを開く
  • 出来上がったipaファイルをDeployGateにドロップ

という手作業をちまちまやるのが面倒になったので、
どうにかできないか調べてみたらCLIだけで完結できたので、その方法を残します

Algoliaを利用してサイト内検索機能を実装する

こんにちは。
当ブログのサイト内検索をしたことある方はお気づきかもしれませんが、サイト内検索にAlgoliaを利用しています。
(後述の事情により月初に使えなくなることがたまにありますが)動作速度もかなり早く、安定して稼働してます。

運用コストもゼロで、記事書いてPRをマージすれば記事公開日に勝手にコンテンツが検索対象に一手間加えてあります。
Algoliaを1ヶ月実運用してみたので、Algoliaはいいぞという紹介記事を書きたいと思います。

また、CQRS・DDDの勉強のために、フロントはReactとAlminで実装してみました。
Almin、CQRS、Fluxの小さな実装例の1つとしても参考になるかと思います。

MiddlemanのビルドにWebpackを組み込む方法

こんにちは。
当ブログはMiddlemanにて運用しているのですが、検索機能や遅延ロードなどで実装したJavaScriptのビルドにはAsset pipelineなどは使わずにwebpackでビルドしています。

Rails5.1が今betaで出ていますね。中でも目玉はwebpacker.gemによるモダンなフロントエンド開発がRailsに導入されることでしょう。 今までのRailsのasset pipelineとは別に、yarnによって依存性を管理しwebpackで結合する独立したjsのビルドシステムがサポートされます。 これによって、以下のような従来のasset pip

Rails5.1から導入されるwebpacker.gemは本当にRailsのフロントエンド開発に福音をもたらすのか? - Qiita

私も同意で、Railsはあくまでサーバサイドアプリケーションで、今まで対してフロントに気を使ってこなかったのだから、中途半端に内部に組み込むのやめてくれ派です。
MiddlemanはRailsのビュー層の部分だけ持ってきたようなものなので、当然同じ問題が発生します。

ということで、MiddlemanとWebpackが共存できる妥協点を探って、実際にこのブログに取り入れてみた結果を残します。

docomoの音声合成APIを利用して無料でVOICEROIDっぽい声を生成してみる

こんにちは。
とある案件でdocomoの音声合成APIを利用することが合ったのですが、
エーアイ版のAPIのデモを試していたら「これゆかりんの声やんけ! と思ったら葵ちゃんもいる!」とテンションが上ってしまいました。
本来VOICEROIDは有償(それも安くはないお値段)なのに、docomoのAPIを介せば無料で使えるというワクワク感。

もはや仕事なんてしている場合じゃない、理解を深めなければ。ということで試してみました。