aircloset社で行われたWeb界隈LT会で話した「サーバーサイドの人にも伝えたいJAM Stackと静的サイトのイマ」です。
早くて、落ちないし、セキュリティで心配することも少ないけど、自由度低いよね。
運用面倒。スケーラビリティ的に不利
攻撃される。
速度的に不利。
動的に静的サイトを生成するジェネレータ
基本的にGitHubのpushと連動してビルドするような感じ
monolithic services => micro services
FTP => GitHub中心の開発環境の変化
PC => スマホシフト
ソースコード管理がGitHubになり、CIと連携してデプロイしたりすることが一般的に。
GitHub Pagesで簡単にサイトが公開できたり、GitHubと連携して静的サイトを公開できるNetlifyの登場
ビルドコマンドの指定や、Global CDN、PR Previewなどがデフォルトで使える。神サービス。
3Gから4Gになったとはいえ、都市部から離れると3Gや劣悪な通信環境が存在する。
Googleのアルゴリズムで遅いサイトはランクが下がりそう
より早くレスポンスを返して、通信量を抑える必要性が高まっている。
動的サイトはサーバーサイドでの処理の分速度的に不利。
Micro Serviceが一般的になり、サーバーサイドの分離はともかく、Stipe(課金)やContentful(CMS)、Sentry(エラー収集)などの外部サービスとAPIを経由して利用する方法が一般化した(はず)。
backendは別サービスのAPIを使ったり、自前で実装するなりして、フロントエンドだけ別プロジェクトに切り出すのも自然。
以前の静的サイトジェネレータ
なんと言ってもメンテナンスフリーになるなら最高だよね。
Jekyll Ruby
Hugo Golang
Next JS(React)
Gatsby JS(React)
Nuxt JS(Vue)
=> JavaScriptを選ぶべき
これらの
JavaScript
APIs
Markup
の要素を満たすスタックをJamStackという。
Google FormとかNetlify Form、他フォーム系のSaaS
静的ページをビルドするのはそんなに数分あればいける。生成処理は最適化が行われ続けているが、APIを叩くのがネックになりやすい。
Next.js, GatsbyJS, Nuxt.jsを選べば、ある程度のレールが敷かれているためライブラリ選定問題と直面することは少ない。
わかる。既存のものはWordPressのまま静的HTML化するプラグインとかでごまかすのがよし。普通に既存の要件を満たそうとするとめちゃくちゃしんどい。
新規のものはWordPressではなく、Headless CMSを採用するとよさそう。
SPAにする必要がない・更新頻度が高くないのであればGatsby。SPAにする場合でReactならNext.js、VueならNuxt.js。具体的にCGMとかだとNext.js、Nuxt.jsにする。Nuxt.jsの方が万人向けだと思う。
APIに利用制限がある場合、静的サイト化する必要があるのでGatsbyを選ぶ気がする。
基本的にSPAも静的サイトと言って良い。
PrebuildではないのでJAM Stackとは呼べないが、より構築が簡単になるはず。
<html>
<div id='app'></div>
<script src='app.js'/> <!-- #appに対してSPAを展開するJS -->
</html>
SSRとか静的化の話をしているのは、
以前からもprerender.ioというサービスもあったが、設定がめんどくさそうであまり流行っていない印象
takenorip先生のSmartDrive
運用レスなサービス作っていこうぜ。
ここ最近、Web技術を利用した画像生成に興味があります。本記事では、日本語における表現の一種である縦書きに焦点を当て、Web技術を使った縦書きを含む画像生成方法についての調査をまとめました。 > 現
追記(2022/12/29): 問い合わせに対応する窓口をTwitterに統一したいので、フォームページは削除しました。 当ブログは静的サイトホスティングサービスのNetlifyでホスティングされ
毎年10月に開催されるHacktoberfestに参加しました。このイベントはOSSへの貢献を行い、期間中に規定数(4つ)の貢献を行った人に特典がプレゼントされるものになっています。 自分はドキュメ