Utiliser des librairies en React

Utiliser des librairies en React

22 février 2026

J'explique comment j'utilise des librairies externes pour ne pas réinventer la roue et accélérer mon développement. Je montre comment installer et intégrer GSAP pour créer des animations fluides, ainsi que Three.js pour générer des scènes 3D immersives comme un cube métallique en rotation. Ces outils me permettent de transformer facilement une interface statique en une expérience beaucoup plus interactive et dynamique.

Introduction

Dans tous les projets React, il est très commun que les développeurs ajoutent des librairies externes pour éviter de réinventer la roue et accélérer le développement. Aujourd'hui, je vais vous montrez comment installer et utiliser une librairie en React. Pour cet article, j'ai choisi d'utiliser GSAP et ensuite Three.js, des composants intéressant à exploiter en développement web pour faire des animations et des modèles 3D.

Pourquoi utiliser des librairies ?

Parfois, coder tout soi-même peut être long et compliqué. Les librairies offrent :

  • Des solutions prêtes : Éviter d’écrire du code compliqué pour des fonctionnalités simple.
  • Sauve du temps : Moins de développement.
  • Meilleur organisation : Des composants déjà optimisés et bien documentés.

Installation d'une librairie

Avant d’utiliser la librairie, il faut d'abord l'installer dans notre projet React.

  1. Assurez-vous d’avoir un projet React en place. Si ce n’est pas encore fait, vous pouvez suivre mon article sur comment initialiser un projet React. mande dans le terminal :
sh
1npm install gsap
sh
1npm install three

Utiliser GSAP dans un projet

GSAP (GreenSock Animation Platform) est une librairie ultra-puissante pour animer des éléments en JavaScript.

  1. Créer une animation simple avec GSAP

On va faire bouger un carré de gauche à droite avec GSAP.

Dans App.js :

jsx
1import React, { useEffect, useRef } from "react";
2import gsap from "gsap";
3
4const AnimationGSAP = () => {
5  const boxRef = useRef(null);
6
7  useEffect(() => {
8    gsap.to(boxRef.current, { x: 300, duration: 2, repeat: -1, yoyo: true });
9  }, []);
10
11  return (
12    <div style={{ display: "flex", justifyContent: "center", marginTop: "50px" }}>
13      <div
14        ref={boxRef}
15        style={{
16          width: "100px",
17          height: "100px",
18          backgroundColor: "blue",
19          position: "relative",
20        }}
21      />
22    </div>
23  );
24};
25
26export default AnimationGSAP;
  1. D'abord, useRef sélectionne l’élément div du carré.
  2. useEffect va utiliser l'animatio dès le chargement du composant.
  3. gsap.to(boxRef.current, { x: 300, duration: 2, repeat: -1, yoyo: true }) : Va déplacr le carré de 0 à 300 pixels en 2 secondes. repeat: -1 signifie que l’animation va se répèter à l'infini. yoyo: true fait revenir le carré à sa position initiale avant de repartir.

Demo:

GSAP Animation Demo

Utiliser Three.js dans un projet

Three.js permet d’afficher des scènes 3D dans un navigateur.

Créer un cube métallique qui tourne

On va créer un cube avec un effet métallique qui tourne dans l’espace.

Dans App.js :

jsx
1import React, { useEffect, useRef } from "react";
2import * as THREE from "three";
3
4const SceneThreeJS = () => {
5  const mountRef = useRef(null);
6
7  useEffect(() => {
8    if (!mountRef.current) return;
9
10    const scene = new THREE.Scene();
11    const camera = new THREE.PerspectiveCamera(75, window.innerWidth / window.innerHeight, 0.1, 1000);
12    const renderer = new THREE.WebGLRenderer();
13
14    renderer.setSize(window.innerWidth, window.innerHeight);
15    renderer.setClearColor(0xd3d3d3);
16    mountRef.current.appendChild(renderer.domElement);
17
18    const geometry = new THREE.BoxGeometry();
19    const material = new THREE.MeshStandardMaterial({ metalness: 1, roughness: 0.3, color: 0xaaaaaa });
20    const cube = new THREE.Mesh(geometry, material);
21    scene.add(cube);
22
23    const light = new THREE.AmbientLight(0xffffff, 0.5);
24    scene.add(light);
25    
26    const directionalLight = new THREE.DirectionalLight(0xffffff, 1);
27    directionalLight.position.set(5, 5, 5);
28    scene.add(directionalLight);
29
30    camera.position.z = 5;
31
32    const animate = () => {
33      requestAnimationFrame(animate);
34      cube.rotation.x += 0.01;
35      cube.rotation.y += 0.01;
36      renderer.render(scene, camera);
37    };
38
39    animate();
40
41    return () => {
42      if (mountRef.current) {
43        mountRef.current.removeChild(renderer.domElement);
44      }
45    };
46  }, []);
47
48  return <div ref={mountRef} />;
49};
50
51export default SceneThreeJS;
52
  1. D'abord on crée une scène, une caméra et un renderer.
  2. On génère un cube métallique.
  3. Ajout de lumières pour donner un effet plus réaliste et plus beau.
  4. L’animation tourne en boucle pour faire tourner le cube sur lui-même.

Demo:

Scene Three JS Demo

Conclusion

Les librairies sont des outils primordiaux lorsqu'on développe des applications. Il n'est pas nécessaire de réinventer la roue à chaque fois, il suffit simplement d'installer ce dont on a besoin.

Aujourd'hui, on a vu comment utiliser GSAP pour les animations et Three.js pour les modèles 3D. Ces deux librairies sont ultra puissantes et permettent de rendre vos projets React plus interactifs et dynamiques.

Sources

Continuer la lecture

Plus d'articles