週刊React Native #24
Reanimated 4.3.0-rc.0 と Worklets 0.8.0-rc.0 公開
React Native Reanimated 4.3.0-rc.0 と Worklets 0.8.0-rc.0 のリリース候補が公開されました。
Androidでのレイアウトアニメーションクラッシュの修正も含まれています。
https://twitter.com/tjzeldev/status/2032452365463241094
react-native-ease:JSオーバーヘッドゼロのアニメーションライブラリ
iOSのCore AnimationとAndroidのAnimatorを直接活用する react-native-ease が公開されました。
UIスレッドが遅延している状況でもアニメーションが滑らかに動き続けるのが特徴です。
Reanimatedとの違いとして、Reanimatedは強力ですが、アニメーション指定が複雑になりやすい点があります。
よりシンプルなアニメーションの利用場面では react-native-ease が活躍しそうです。
https://twitter.com/janicduplessis/status/2032171281571815537
React Native Streamdown:ストリーミング対応Markdownライブラリ
Software Mansionが「React Native Streamdown」を発表しました。
WorkletsのBundle Modeを使ってバックグラウンドでMarkdownを処理することで、AIアプリのストリーミング表示時のジャンクをJSスレッドへの影響ゼロで解消します。
AIチャットアプリなど、LLMからストリーミングでMarkdownを取得して表示するような場面で活用できそうです。
https://twitter.com/swmansion/status/2032110503015628809
React NavigationのドキュメントがLLM向けにMarkdown形式で返却可能に
Accept: text/markdown ヘッダーを付けてリクエストすると、React NavigationのドキュメントがMarkdown形式で返ってくるようになりました。
Dynamic APIとStatic APIの違いをまとめたページも新たに追加されています。
https://twitter.com/reactnavigation/status/2032273809345032664
https://twitter.com/reactnavigation/status/2031838969713803638
React Native Directoryにバージョン別ダウンロードチャートが追加
React Native Directoryのパッケージバージョンページに、直近1週間の上位バージョン別ダウンロード数を示すチャートが追加されました。
新バージョンの普及状況を視覚的に確認できます。
https://twitter.com/Simek/status/2032088283476341003
Expo SDK 55でExpoUIのJetpack ComposeがBetaに
先日Expo SDK 55が公開されましたが、そのタイミングでExpoUIのJetpack Composeがアルファからベータになりました。
SwiftUI版ではネイティブのSwiftUIのAPIと命名を揃えるようになっていましたが、Jetpack Compose版も同じように、Material3のコンポーネントと同じ命名規則になっています。
これによってSwiftUIやJetpack Composeの規約に準拠するため、詳細は公式のドキュメントを参照でき、人にもAIにも分かりやすくなるとのことです。
https://twitter.com/expo/status/2033901654698025248
https://expo.dev/blog/expo-ui-in-sdk-55-jetpack-compose-now-available-for-react-native-apps
VoltRN CLI:React Native/Expo向け開発者CLIツール
React NativeおよびExpoプロジェクト向けの「VoltRN CLI」がリリースされました。
プロジェクトのスキャフォールディング、スクリーンジェネレーター、プロジェクトドクターなど複数の機能を備えています。
https://twitter.com/IronTonyTheDev/status/2031671474990596198
React Native のドラッグ&ドロップライブラリ react-native-reanimated-dnd v2.0 が公開
React Native 向けのドラッグ&ドロップライブラリであるreact-native-reanimated-dndがv2.0になりました。
React Native Reanimatedを利用しており、パフォーマンスが高く、様々な機能を揃えているようです。
https://twitter.com/entropyconquers/status/2033909055220285462
https://github.com/entropyconquers/react-native-reanimated-dnd
今週のひとこと
ExpoUIについての記事で、 @expo/ui/swift-ui と @expo/ui/jetpack-compose を使った共通のコンポーネントAPIを開発していると書かれていましたね。
現在はSwiftUIとJetpack ComposeのAPIが分かれているので、プラットフォームごとにそれぞれ実装する必要がありますが、それをラップした共通コンポーネントがあることで、より導入しやすくなるかもしれません。
先週発表のあったExpo Agentでは、SwiftUIとJetpack Composeを駆使した開発について触れられていましたが、このようにExpoUIを活用してより品質の高いアプリを作ることを目指しているのかもしれませんね。
また、Expo SkillsにExpoUIのSkillも追加されていました。 こちらも活用すると良さそうです。
https://github.com/expo/skills/tree/main/plugins/expo/skills/expo-ui-swift-ui https://github.com/expo/skills/tree/main/plugins/expo/skills/expo-ui-jetpack-compose