10月3日、Engineering at Metaで「Meta Connect 2024 でのReact(React at Meta Connect 2024)」と題した記事が公開された。この記事では、MetaにおけるReactとReact Nativeの深い活用方法、さらにはこれらの技術がどのようにしてMetaの大規模な製品開発に革新をもたらしているかについて、詳しく紹介されている。
ReactとReact Nativeは、Metaにとって単なるツール以上の存在であり、これらの技術は製品開発の根幹を成すものだという。毎月5,000人以上のエンジニアがこれらを駆使して、新しい製品やエクスペリエンスを作り上げている。Metaが開発する製品の品質と、凄まじいリリース頻度の背景には、ReactとReact Nativeの強力な基盤がある。
InstagramとFacebookのMeta Quest版:混合現実の未来へ
Meta Connect 2024では、Meta Questに向けたInstagramとFacebookの再構築が注目を浴びた。MR(Mixed Reality、混合現実)の環境におけるソーシャルエクスペリエンスを提供するために、これらのアプリはゼロから作り直された。興味深いのは、単に既存のモバイルアプリをそのまま移植するのではなく、React Nativeを用いることで、まったく新しいインタラクションやアニメーションを取り入れている点だ。
例えばInstagramでは、フィードに表示される動画をフルスクリーンモードでシームレスに再生しつつ、同時にコメントも表示することができる。さらに、コントローラージョイスティックを使って写真のスタックをスワイプするなど、まさにMRならではの体験が提供されている。また、インタラクティブな要素に対してはホバーアニメーションが導入され、ユーザーがコントローラーを動かすたびにスムーズに反応するという巧妙な設計が施されている。
Facebookに関しては、デスクトップ版Facebook.comの成熟したコードやインフラを活用し、ニュースフィードやコメント機能といった複雑な要素を再利用している。React Nativeのコード共有技術により、こうした要素をMeta Questでもスムーズに展開することができ、Meta独自のジェスチャーやインタラクションを組み込んだ新しい体験が可能になった。
Meta Horizonモバイルアプリ:さらなる拡張とカスタマイズ
次に紹介されたのが、Meta Horizonモバイルアプリの刷新だ。このアプリは新しい見た目と名前を持ち、より簡単にアバターをカスタマイズできる専用タブを追加した。また、Horizon Worldsでクエストをクリアすると、限定のアバタースタイルやアイテム、エモートがアンロックされる機能も追加された。React Nativeを使用してアプリのパフォーマンスも大幅に向上しており、Metaの他のモバイルアプリと同等の高速な動作を実現している。
Meta Horizonストア:開発者に開かれた新しいチャンス
Meta Horizonストアは、全ての開発者にアプリを公開する機会を提供している。このストアでは、特に2Dアプリを含めたアプリの公開が可能になり、これに伴ってストアのナビゲーションが大幅に改善された。新しい「Early Access(アーリーアクセス)」セクションも追加され、ユーザーは新しいアプリやゲームをいち早く体験できるようになった。
ReactとReact Nativeはこのストアでも大活躍しており、異なるプラットフォーム間での機能の統一が進んでいる。特にMeta Horizonストアのナビゲーションとルーティング機能は、元々Facebook.com向けに開発されたMetaの内部ルーターをReact Nativeと共有する形で再利用されており、これにより新機能の展開が迅速に行われるようになった。また、Web版のMeta HorizonストアではCSSをStyleXに移行し、国際化対応やライト/ダークモード対応などの進化が加速した。
Meta Spatial Editor:新たな3Dクリエイションツール
Meta Spatial Editorは、React Native for Desktopを使用したデスクトップアプリであり、Meta Horizon OS向けの没入型体験を作成するための強力なツールだ。3Dシーンの視覚化と編集ができるこのアプリは、glTF標準を使ってMeta Spatial SDKにエクスポートすることができる。React Nativeは、C++と連携して60fpsでの高速描画を実現し、エンジニアたちはReactの開発体験を最大限に活用して、より迅速に機能を開発できるようになっている。
このように、ReactとReact Nativeは、Metaの多くの製品開発において中心的な役割を果たしているだけでなく、それ自体がMetaのイノベーションを支える大きな柱となっている。Metaのエンジニアたちは、これらの技術を使ってユーザーにとって直感的でスムーズな体験を提供し続けている。
詳細は[React at Meta Connect 2024]を参照していただきたい。