サーバーとクライアントの協調に重点を置く(Server/Client Model) †
- Webフロントエンドの分野はクライアントにロジックを置く比重が大きくなりがちですが、サーバーにもしっかりとロジックの実行を任せて、ユーザーのネットワークを通るデータを可能な限り減らそう、というのがこのポリシーの要点です。
HTTP通信の扱いやHTMLの扱いはWeb標準に寄り添い連携する(Web Standards, HTTP, and HTML) †
- Remixには「せっかく学習コストをかけるなら、Web標準を覚えることに労力を使ってほしい」という願いがあります。そのため、基本的なAPIについては、可能な限りRemix独自のAPIを用意せず、Web標準のAPIを採用しています。
- 例えば、サーバーサイドでSSR中に外部へ通信を行いたい場合は、Web標準のWeb Fetch API、つまりfetch()関数が利用できます。サーバーの動作環境(Node.js、Deno、Cloudflare Workersなど)に関わらず、ブラウザと同じAPIのfetch()関数が利用できるのです。
プログレッシブエンハンスメント(Progressive Enhancement) †
- プログレッシブエンハンスメントとは、リッチな環境のユーザーには最高の体験を提供しつつ、そうでないユーザーにも基本的な機能は提供しよう、という設計哲学です。
抽象化しすぎない(Don’t Over Abstract) †
- Remix固有のAPIも、高度に抽象化された独自機能というよりは、Web標準の機能を少し便利に扱うための手助けとして用意している色合いが強く、やはりWeb標準のAPIを意識しやすいようになっています。
特徴 †
SSGの機能を備えていない †
ファイルシステムルーティング †
- NestedRouting?のサポート
- HTTPヘッダーの詳細設定
Remixにおけるステート管理 †
AWS †
Momento †
|