

タイトルにSPA 化するにはと書きましたが、実際にはそれ以前の段階の「どの技術・ライブラリを使用すべきか？」が質問の趣旨となります。

現在、ウェブアプリとして掲示板サービスを運営しています。  
いわゆる従来型のMPA（multi page app）なのですが、以下のように変更を加えたいと考えています。

① 投稿をAjax で行う  
② 新しい投稿があったら差分のみを取得し画面を自動更新する（WebSocket？）  
③ ページ遷移の際にページ全体を更新せずに差分のみ更新する（SPAのような）

上記①～③のように作り直す場合、どのような技術を選定すればよいでしょうか？  
調べていると、React, Next.js, SPA, SSR, SSG, など様々なワードが飛び交い、決めあぐねています。

また、①,②は変更範囲がアプリの一部にとどまりますが、③はそれが全体に及びます。  
そのため、これは最悪後回しにするか、一部のページのみに適用できればよいと考えています。  
ページングのときに差分だけ取得する、検索の際に結果だけ差分として取得するなど。

これらはフロント側での実装になるかと思いますが、開発にあたってはバックエンドとの相性の問題もあるかと思います。  
バックエンドでは Laravel 9 を使用しています。  
Ajax はいいねボタンなどすでに一部の機能で取り入れていますが、Fetch などの処理をバニラのJS で書いて実装しています。  
これも今回の変更に合わせてReact を使うならReact で書き換えるなどしたいと考えています。

①～③の要件を満たすフレームワーク？ライブラリ？はあるのでしょうか。  
それとも複数のライブラリを使うことになりますか？  
実際の開発ではこのような場合どのような技術選定になるかご教授いただけませんでしょうか。

以上、よろしくお願いします。


CC BY-SA 4.0
2022-04-20T20:31:42.077
88422
2022-04-20T20:31:42.077
50616
question
php reactjs ajax websocket next.js
Laravel を SPA 化するには？ウェブアプリを改修したいと思っています