公開: 2022年2月23日 06:31:26 JST
Article Header Image

elm-pages・ヘッドレスCMS事始め

TL;DR

背景

elm-pages

https://github.com/dillonkearns/elm-pages

実際に触れてみて

ひとまずの成果物はこのサイトそのもの。
https://ymtszw.github.io

Elmはよく「フレームワークを同梱したwebアプリ(SPA)専用の言語」という説明をされることが多く、自分もそう説明することは結構多い。

が、そうはいってもbare Elmだけだとアプリケーションが大規模化するにつれて表面化する課題はあり、特にボイラープレートコードの多さはよく議論に上がると思う。健全な型システムで守られてはいるので一過性の作業としてやり過ごしてしまうことはできるが、楽できるのにしないのもプログラマの姿勢としては物足りない。ということで、

といった「フレームワーク on フレームワーク」ないし「フレームワーク over フレームワーク」構成は続々と提案されてきている。その中でelm-pagesの体験の良さはかなり優れていると言っていいと思う。


elm-pagesはStatic GenerateできてキャッシュフレンドリーなJamstackフレームワーク、ということでNext.jsは結構意識しているように受け止めている。何ならside-by-side機能比較も十分作れるレベルだと思う

https://jamstack.org/

https://nextjs.org/

流石にDillonさんの個人開発なので正面から戦わせるのは厳しいところではあるし、基本的には(少なくとも今は)プロダクションビルドは静的ページ事前生成+ページロード後にSPA内で動的処理、という構成にとどまっていて、Incremental Static RegenerationというNext.jsの最新の目玉機能には追いついていないし、そもそも追いつこうとしているか(聞いてみないと)わからない。が、それでなくても今後の機能展開に期待は十分持てる。

あと、現在v3向け作業の真っ最中でドキュメントが追いついておらず、したがって私の理解も追いついてないところも結構あるので見逃してるだけで、「実はもっとこんな事もできる」といった可能性もあり得るので、これを読んだ人は是非触ってみて欲しい(特にAPI Route周りまだ触っていないので。)

Elmでなにか書いてみたいが、丁度いいネタがないという人にも、とりあえずelm-pagesからElmに入り、自分のブログサイトでも作りつつ、記事も書きつつ色々試せる、楽しい遊び場になること請け合いだ。

久々にElm関連で業務外に時間を忘れて深堀りしてしまった気がする。いろんなリポジトリに散らばってる昔の記事とか発表資料とかを集約する機運も高まったし、色々楽しみだぞ~~

https://www.youtube.com/watch?v=5GEhrq2dH0k

無限に時間が欲しい

公開: 2022年2月23日 06:31:26 JST