今作ってるWebアプリでMaterial Design Liteを使用していたのですが…

Google謹製ということもあって安心して使っておりました…。おりました…。のですが、ある時気付いてしまったのです…。「あれ、コレ、全然コミットされてなくない?」

「いやいや、そんなことはない。Google様のプロダクトだぞ。開発が止まっているなどあり得ない…。きっとデフォルトブランチ以外で開発が進んでいるに違いない…。」そう思って手元にクローンしてみた結果、他のブランチでも一切開発が進んでいないことに気付いてしまいました…。なんてことだ…。まじかマギカ。

で、Material Design LiteのREADMEを見たら下記の文言が…。

Limited support
Material Design Lite is now in limited support, with development having moved to the Material Components for the web repository.

Material Design LiteのREADMEより

要するに開発はMaterial Components for the webに移行して限定的なサポートしかしませんよ。ということですね。Material Components for the webのページにもMaterial Design Liteの後継のUIコンポーネントですって書いてるんですね。

確かに最後のリリースが去年(2016年の11月)で「エラい期間が空いてるな~」な~んてのんきに思ってたんですよ。普段はもう少ししっかり調べるのですが…。Google謹製ということで油断してました。あたしって、ほんとバカ…。

Material Components for the webとは…?


開発のコアメンバーはGoogle社の人間とUXのプロが行っているとのこと。コントリビューションのグラフを見るとMaterial Design Liteのコントリビューショングラフと一致する部分も多いのでMaterial Design Liteをベースに作成したのではないかというのが予想できます。React、Anguler、Vue.js辺りでSPA作るのに親和性がよい的なことも書いてましたね。後はiOSとかAndroid向けのライブラリもあるようなのでその辺りへの展開も視野に入れて作ってるっぽい。

移行するの?しないの?理由は?


今後開発されないライブラリを使用するのは避けたいのでMaterial Components for the webに移行しようとドキュメントを読んでみました。ドキュメントを読んだうえで、一つのViewに適用してみました…。その結果、今回は移行しないことにしました。以下、理由を書いてみます。

ドキュメントが…

なんというか、まだ開発中(ver 0.21)というのもあってか、ドキュメントがプアというわけではないのですが、Material Design Liteに比べたらプアでした。どこにどういう内容が記述してあるかもちょっと解り難いです…。後、ぶっちゃけフォントも見辛い…。溢れるパチモノ感ががありまして、この辺もやる気をそがれました。

なんか、う~ん…

完全に好みの問題になるのですが、ただでさえカクカクしているマテリアルデザインをさらに煮詰めた上に、なんかパチモノ感があふれており(デザイナーの人申し訳ないですが)完全個人の好みなのですが、なんというか、やっぱりパチモノ感がありましてですね…。好みでないというか…。う、うん…。特にフォント。変更できると思いますが、ちょっと安っぽすぎないすか…。

Sass使え!Sass!

まだver1.0が出てないせいかnpmでインストールしないといけません。また、マテリアルデザインには基調色を2色決めて、それを中心に開発する的な感じなのですが、その基調色を変えたかったら「Sassを使え!!」ですよ。「Sass使って簡単に変更できますよ~」とか書いてるんですけど、片手間でフロントエンドやってる人間からしたら可能な限り既にあるものを使いたいんですよ。Sassとか覚える余裕ないですし…。Material Design Liteは基調色を選んでダウンロードってのができたんですよね…。まあ、この辺はまだ1.0が出てないので仕方ないのかもしれません。

そもそもMaterial Design Liteで足りてる

んですよ。実装してるアプリはMaterial Design Liteの機能内でカバーできそうですし、無理して移行する必要もないかな…。と思いました。Material Design Liteの方が好みだし…。いざとなったら両方混ぜて使えばええし…。

まとめ


Material Components for the webを使わないと実現できないかな~って状態になるまでは、今回の開発はMaterial Design Liteでええかな。って思いました。Material Components for the webもver1.0のリリースはまだ先だと思いますし、ウォッチしながら必要がでてくれば移行しようかと思います。