JavaScript、React、Vue向けのオープンソースアニメーションライブラリ。スプリング、ジェスチャー、レイアウト遷移、スクロール連動エフェクトを提供します。
pmndrs/react-spring
DOMやreact-three-fiberの要素を、宣言的にも命令的にもアニメーションできる、ばね物理ベースのReact向けライブラリ。
- スター
- 29,261
- フォーク
- 1,235
- 未解決の Issue
- 79
- 最終コミット
- 6 日前
これは何?
react-springは、固定時間ではなくばね物理を基盤とするReact向けアニメーションライブラリです。コンポーネントのスタイルの目標値を指定すると、現在の値からばねを使って目標値へ向けてアニメーションするため、アニメーションの途中で中断したり目標値を変更したりしても、動きは滑らかなままです。固定時間でのアニメーションが適している場合は、イージング曲線を使った時間指定にも対応しています。
ライブラリには、レンダリング対象ごとに別々のパッケージが用意されています。@react-spring/webはanimatedラッパーコンポーネントを通じてReact DOM要素をアニメーションし、@react-spring/threeはreact-three-fiberのシーンを対象とします。useSpringなどのフックを使って宣言的に記述できるほか、より細かい制御が必要な場合は命令的に操作できます。
このプロジェクトはTypeScriptで書かれ、npmで配布されています。ドキュメントサイトには各フックのライブサンプルがあり、リポジトリにはCodeSandboxで開けるサンドボックスを備えたデモアプリも含まれています。
主な機能
- 01中断や目標値の変更があっても滑らかさを保つ、ばねベースのアニメーション。
- 02@react-spring/webによるReact DOMと、@react-spring/threeによるreact-three-fiberの両方に対応。
- 03useSpringなどの宣言的なフックに加え、必要に応じて命令的に制御可能。
- 04イージング曲線を使った、時間指定のアニメーションにも対応。
- 05TypeScriptで実装され、npmで公開。
ユースケース
- Reactコンポーネントにスクロール時の表示やフェードインのトランジションを追加する。
- トグル、展開、ドラッグ操作などに伴うUI状態の変化をアニメーションする。
- react-three-fiberのシーン内にある3Dオブジェクトをアニメーションする。
クイックスタート
- 1
web ターゲットをインストールする
npm install @react-spring/web - 2
animated と useSpring をインポートし、要素を animated.div でラップする
トピック
よくある質問
- react-spring とは?
- DOMやreact-three-fiberの要素を、宣言的にも命令的にもアニメーションできる、ばね物理ベースのReact向けライブラリ。 react-springは、固定時間ではなくばね物理を基盤とするReact向けアニメーションライブラリです。コンポーネントのスタイルの目標値を指定すると、現在の値からばねを使って目標値へ向けてアニメーションするため、アニメーションの途中で中断したり目標値を変更したりしても、動きは滑らかなままです。固定時間でのアニメーションが適している場合は、イージング曲線を使った時間指定にも対応しています。
- react-spring は無料で使えますか?ライセンスは?
- react-spring は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- react-spring は今もメンテナンスされていますか?
- 活発にメンテナンス中。react-spring の最終コミットは 2026年11月1日 です。
- react-spring は何に使えますか?
- Reactコンポーネントにスクロール時の表示やフェードインのトランジションを追加する。 トグル、展開、ドラッグ操作などに伴うUI状態の変化をアニメーションする。 react-three-fiberのシーン内にある3Dオブジェクトをアニメーションする。
- react-spring のインストール方法は?
- web ターゲットをインストールする: npm install @react-spring/web animated と useSpring をインポートし、要素を animated.div でラップする
- react-spring はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/pmndrs/react-spring
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
アクセシビリティとパフォーマンスへの配慮を組み込んだ、React、Next.js、Svelte、Astro向けMotion.devアニメーション生成Claude Codeスキル。
Rapier WASM物理エンジンをReactにバインディングし、剛体、コライダー、ジョイントをreact-three-fiberのシーンに組み込めます。
動画のタイムラインやアニメーションの唯一の情報源をコードとする、Reactベースのプログラム生成動画フレームワーク。
shadcnまたはjsrepoから導入できる、無料でアニメーションやカスタマイズに対応したReact・Next.jsコンポーネントと背景素材を215種類以上収録したライブラリです。
Next.jsやshadcn/uiのアプリにコピーして使える、アニメーション付きUIコンポーネントとエフェクトを集めたReact・Tailwind CSSライブラリです。