Reactでパターンシーケンサを作った

以前、シンセサイザーを作ったが、
楽器が弾けないのでブラウザに自動演奏してもらうことにした。

f:id:nishaya:20170827210726p:plain

Reaktion(DEMO)

Flowtype

シーケンスや音源のプリセットにflowtypeのアノテーションを使ったが、内部で生まれては消えるようなデータならわざわざclassを定義するまでもないし、Flowtypeなら必要な部分にだけ適用することができるので、導入したことで効率的に開発を進めることができた。

Material-UI

本当はGrommetのようなメリハリの効いたのが使いたかったんだけど、コンポーネントのバリエーションが足りなくて今回もMaterial-UIを使った。

とはいえ、Material-UIにも楽器を作る上で必要なコンポーネントが全て揃っているわけではないので、楽器のためのUIコンポーネントライブラリを作ってみるのもアリかもしれない。

音を鳴らすしくみ

肝心の音を鳴らすしくみについては
リファクタリングしながら書いていこうと思う。