2026-06-01 · #31
週刊React Native #31 Expo Desktop発表、Swift Package Manager対応、Evan Bacon退職ほか
App.js Conf 2026 開催#
ポーランドのクラクフでReact Native / Expoの世界的カンファレンス「App.js Conf 2026」が開催されました。今号のトピックの多くがApp.js Confでの発表と連動しており、SPM対応、Gesture Handler 3.0、Legend List 3.0、Expo Desktopなど、エコシステム全体にインパクトのある発表が相次ぎました。
Let’s start the first day of App.js conf! 🥳 @kzzzf just took the stage for the Software Mansion Keynote with a look at where the React Native ecosystem is heading and the role we play in shaping it. 👀
セッションごとの詳細は私のZennスクラップにまとめています。
- Day 1: https://zenn.dev/kazutoyo/scraps/05a1faff93abce
- Day 2: https://zenn.dev/kazutoyo/scraps/f7df15ab380693
React NativeのSwift Package Managerへの対応#
今年12月にCocoaPodsが読み取り専用となり利用できなくなることを受けて、React NativeでもCocoaPodsからSwift Package Manager(SPM)への移行準備が進められています。
App.js Confのセッションでは、npx react-native spm コマンドによってCocoaPodsからSPMへ移行する仕組みが紹介されました。
Goodbye pods! SPM support explained by @chrfalch and @CipolleschiR at @appjsconf Can’t wait to start using it!
Straight from our scene: the RFC for Swift package manager for React Native iOS projects is open 👇 github.com/chrfalch/discussion… twitter.com/Danny_H_W/status/2…
React NativeのSPM対応のRFC github.com/chrfalch/discussion…
Expo Desktopが発表#
App.js Confでbirch_js氏が、Expoでデスクトップアプリを構築する「Expo Desktop」を発表しました。「電話を超えたReact Nativeの現在地」というセッションの中で披露され、コミュニティから大きな反響を呼んでいるようです。
We just got @expo desktop from @birch_js at @appjsconf! ⚛️🚀
NativeScriptがReact Nativeで利用可能に#
NativeScriptをReact NativeのTurboModuleとして動作させるプレビュー版が公開されました。@nativescript/react-native パッケージとして提供されており、React Nativeのコードからそのまま呼び出せます。
これにより、任意のネイティブAPIへのアクセスや、カスタムUIKit Viewの定義、Metalによるカスタムエフェクトの適用などが可能になります。
What if you had access to all native APIs in React Native? Defining custom UIKit views anywhere you want, using cutting edge platform APIs, or adding custom effects to your views using Metal We've published a preview of NativeScript compiled as a RN TurboModule using JSI. We'd twitter.com/NativeScript/statu…
Use NativeScript in React Native right now 📲 @nativescript/react-native 🤙 @appjsconf
Expo Router v56:React Navigationをフォーク#
Expo Router v56はライブラリ開始以来最大の変更を含むリリースで、内部制御のためにReact Navigationをフォークしました。これにより従来は難しかった機能拡張が可能になるとのことで、詳細はブログ記事で公開されています。
🚀 Expo Router v56 comes with the biggest shift to the library since it launched. You've probably already read about us forking React Navigation. In the blog below you'll get all the details but essentially we needed to fork in order to control/tune the internals. This unlocks
Reanimated 4.4.0:iOSでCore AnimationへのCSSアニメーションオフロード#
Reanimated 4.4.0では、iOSでサポートされているアニメーションをCore Animationにオフロードする対応が入り、UIスレッドで25FPSから120FPSへの改善デモが公開されました。Reanimated CSS APIを使用している場合はコード変更なしでこの恩恵を受けられます。
そのほか、フラグ越しのAnimation Backend統合、useTimestampフックの追加、AndroidでのC++ビルド時間を短縮するプリコンパイル済みヘッダ対応も含まれています。
Reanimated 4.4.0 is here and it can push CSS animations straight to Core Animation on iOS! ✨ What else? Animation Backend integration (behind a flag), useTimestamp hook, and precompiled headers cutting C++ build times on Android. Check out the demo with 25 vs 120 FPS on the UI
Reanimated now offloads supported animations to Core Animation on iOS improving perf and framerate in many common scenarios. Best thing: if you're using reanimated CSS API you don't have to do anything to benefit from this change. That's the power of a good abstraction twitter.com/swmansion/status/2…
React Native Gesture Handler 3.0が安定版に#
App.js Confのキーノートに合わせて、React Native Gesture Handler 3.0が正式に安定版としてリリースされました。React Compilerと互換性のあるフックベースのAPIやReanimatedとの深い統合が含まれており、Software Mansionが開発を担当しています。
Our App.js keynote has finished, so we can officially spill the beans also here 📣 React Native Gesture Handler 3.0 is now officially stable, offering a hook-based API compatible with the React Compiler, deep Reanimated integration, the new recommended way to build buttons, and
Legend List 3.0:v2からほぼ1,000コミット#
Legend List 3.0がリリースされ、React DOMサポート、チャットやAIアプリ向けのKeyboardAwareLegendList、Reanimatedアイテムトランジションなどが追加されました。v2からほぼ1,000コミットを経てのリリースとなります。
Legend List 3.0 is here! 🎉 ✨ React DOM support ✨ Even faster, more stable ✨ Perfect initial scroll ✨ KeyboardAwareLegendList for chat and AI apps ✨ Reanimated item transitions ✨ So much more! It’s been almost 1,000 commits since v2, super excited to finally release it!
React Native Screens 5.0が近日リリース予定#
App.js Confで、React Native Screens 5.0の登場が予告されました。新しいスタック実装による状態管理の改善、信頼性の高いview lifecycleイベント、Androidのpredictive back gesture対応などが含まれる予定とのことです。
React Native Screens 5.0 coming soon! The new stack will bring better state management, reliable view lifecycle events, predictive back gestures, and more! Stay tuned 🤩
TypeGPU CLIが公開#
App.js Confでiwoplaza氏により、TypeGPU CLIが発表されました。型安全なGPUプログラミングをReact Native / Webで実現するTypeGPUの開発体験を改善するためのコマンドラインツールです。
TypeGPU CLI just announced by @iwoplaza. Have fun using it! docs.swmansion.com/TypeGPU/
Expo MCP Serverが無料プランで利用可能に#
Expo MCP Serverが、すべてのExpoアカウントで利用可能になりました。AIコーディングアシスタントからExpo公式ドキュメントやSDKガイダンスをエディタ上で参照できるなど、AIエージェントとの連携を強化する用途で活用されているようです。
📚 The Expo MCP Server is now available on the Free plan ✍️ @kudochien expo.dev/changelog/the-expo-mc…
Apex:React Native開発向けにファインチューニングされたAIモデル#
Callstackが、React Native開発向けにファインチューニングされたAIモデル「Apex」のアーリーアクセスを公開しました。同社のagent-deviceやReact Native本体と組み合わせることで、モバイル開発フローを通したエージェント駆動の開発が可能になります。デモでは1分間の実行コストが0.008876ドルと、運用コストの低さも示されています。
there's something magical in using the tools your team ships: → Apex: an AI model fine-tuned for React Native dev → agent-device: mobile verification for AI agents → React Native: best mobile cross-platform lib Cost of Apex running this flow for 1 minute: $0.008876
8年間Androidアプリをクラッシュさせていたバグが修正#
java.lang.IllegalArgumentException: invalid pointerIndex -1 for MotionEventというエラーが8年間にわたってAndroidアプリをクラッシュさせていたReact Nativeのバグが修正されました。
React Native bug that's been crashing Android apps for 8 years 💥 𝚓𝚊𝚟𝚊.𝚕𝚊𝚗𝚐.𝙸𝚕𝚕𝚎𝚐𝚊𝚕𝙰𝚛𝚐𝚞𝚖𝚎𝚗𝚝𝙴𝚡𝚌𝚎𝚙𝚝𝚒𝚘𝚗: 𝚒𝚗𝚟𝚊𝚕𝚒𝚍 𝚙𝚘𝚒𝚗𝚝𝚎𝚛𝙸𝚗𝚍𝚎𝚡 -𝟷 𝚏𝚘𝚛 𝙼𝚘𝚝𝚒𝚘𝚗𝙴𝚟𝚎𝚗𝚝 Now it's fixed! github.com/facebook/react-nati…
useWindowDimensions()のパフォーマンス問題が修正へ#
App.js Confでjmeistrich氏がuseWindowDimensions()のパフォーマンス問題を指摘したことをきっかけに、React Nativeチームが修正をマージできる状態になりました。
Big thanks to @jmeistrich for highlighting the 𝘂𝘀𝗲𝗪𝗶𝗻𝗱𝗼𝘄𝗗𝗶𝗺𝗲𝗻𝘀𝗶𝗼𝗻𝘀() perf. issue at @appjsconf 👏 Now the #reactnative team can merge the fix! 🎉 Link: github.com/facebook/react-nati…
Evan Bacon氏、Expoを退職#
19歳からExpoに携わり、9年間在籍したEvan Bacon氏が退職を発表しました。Expoの創業期から関わり続けたメンバーの退職とあって、コミュニティに大きな反響を呼んでいるようです。
After 9 years, I just finished my last week at Expo. Started working on it when I was 19, and it's been the center of my life ever since. Incredibly grateful to the team and community we built along the way!
今週のひとこと#
今週はApp.js Confでの発表が一気に流れてきましたね。SPM対応やExpo Desktop、NativeScriptのTurboModule化など、React Nativeのこれからの方向性を感じる発表が多かったですね!
また、長らくExpoの成長を支えてきたEvan Bacon氏がExpoを退職されたとのことで、突然の発表に驚きました。 今後どのような活動をされるのか注目したいですね。















