Apple a toujours été à l'avant-garde de la conception d'interfaces utilisateur, et l'un de leurs effets récents les plus captivants est l'aspect "verre liquide". Cet effet, caractérisé par son apparence fluide, gélatineuse, ajoute une couche de profondeur et d'interactivité aux éléments d'interface utilisateur. C'est une manière subtile mais puissante de rendre vos applications plus dynamiques et attrayantes.
Dans cet article, nous allons explorer comment recréer cet effet saisissant dans vos applications React en utilisant la bibliothèque liquid-glass-react
.

Cette bibliothèque fournit un composant hautement personnalisable et facile à utiliser qui encapsule la complexité de l'effet, vous permettant d'ajouter une touche de la magie du design d'Apple à vos projets avec un effort minimal.

Vous voulez une plateforme intégrée, tout-en-un, pour que votre équipe de développeurs travaille ensemble avec une productivité maximale ?
Apidog répond à toutes vos exigences et remplace Postman à un prix beaucoup plus abordable !
Pour commencer
Avant de plonger dans les subtilités de l'effet verre liquide, mettons en place la bibliothèque liquid-glass-react
dans notre projet.
Installation
Pour installer la bibliothèque, exécutez simplement la commande suivante dans votre terminal :
npm install liquid-glass-react
Ou si vous utilisez Yarn :
yarn add liquid-glass-react
Utilisation de base
Une fois la bibliothèque installée, vous pouvez commencer à utiliser le composant LiquidGlass
dans votre application React. Voici un exemple de base de son utilisation :
import React from 'react';
import LiquidGlass from 'liquid-glass-react';
function App() {
return (
<div className="App">
<LiquidGlass>
<div style={{ padding: '20px' }}>
Hello, Liquid Glass!
</div>
</LiquidGlass>
</div>
);
}
export default App;
Cela affichera un conteneur de verre liquide de base autour du texte "Hello, Liquid Glass!". Bien que ce soit un bon point de départ, la véritable puissance de la bibliothèque réside dans ses vastes options de personnalisation.
Concepts fondamentaux
Pour apprécier pleinement et utiliser efficacement la bibliothèque liquid-glass-react
, il est utile de comprendre les concepts fondamentaux qui alimentent l'effet. L'effet verre liquide est principalement obtenu grâce à une combinaison de filtres SVG, de cartes de déplacement et d'aberration chromatique.
Filtres SVG
Les filtres SVG (Scalable Vector Graphics) sont une fonctionnalité puissante de SVG qui vous permet d'appliquer une large gamme d'effets à vos graphiques. Dans le cas de l'effet verre liquide, les filtres SVG sont utilisés pour créer la distorsion et le flou qui donnent au composant son aspect caractéristique.
La bibliothèque liquid-glass-react
utilise une série de primitives fe
(filter effect) pour obtenir l'effet désiré. Celles-ci incluent :
feGaussianBlur
: Cette primitive est utilisée pour créer le flou d'arrière-plan qui est un composant clé de l'effet verre.feImage
: Cette primitive est utilisée pour charger la carte de déplacement, essentielle pour créer la distorsion.feDisplacementMap
: C'est la star du spectacle. Elle utilise les valeurs de pixels de la carte de déplacement pour déformer le graphique source.feColorMatrix
: Cette primitive est utilisée pour manipuler les canaux de couleur de l'image, ce qui permet de créer l'effet d'aberration chromatique.feBlend
: Cette primitive est utilisée pour combiner les différentes couches de l'effet, telles que les canaux rouge, vert et bleu pour l'aberration chromatique.feComposite
: Cette primitive est utilisée pour combiner l'effet final avec le graphique source original.
Cartes de déplacement
Une carte de déplacement est une image en niveaux de gris utilisée pour déformer une autre image. Le filtre feDisplacementMap
utilise les valeurs de couleur de la carte de déplacement pour décaler les pixels du graphique source. Les zones plus claires de la carte de déplacement pousseront les pixels du graphique source dans une direction, tandis que les zones plus sombres les pousseront dans la direction opposée.
La bibliothèque liquid-glass-react
est livrée avec trois cartes de déplacement intégrées :
standard
: Une carte de déplacement standard, lisse.polar
: Une carte de déplacement avec une distorsion basée sur les coordonnées polaires.prominent
: Une carte de déplacement avec un effet plus prononcé, "bulleux".
Vous pouvez également fournir votre propre carte de déplacement personnalisée, ou même en générer une dynamiquement à l'aide d'un shader.
Aberration Chromatique
L'aberration chromatique est un effet optique qui se produit lorsqu'une lentille ne parvient pas à focaliser toutes les couleurs au même point. Cela entraîne une "frange" de couleurs autour des bords des objets. Bien que cela soit généralement considéré comme un effet indésirable en photographie, il peut être utilisé pour créer un aspect stylé et futuriste dans les graphiques numériques.
La bibliothèque liquid-glass-react
simule l'aberration chromatique en divisant l'image en ses canaux rouge, vert et bleu, puis en déplaçant chaque canal d'une quantité légèrement différente. Cela crée un effet de frange de couleur subtil mais efficace qui ajoute à la sensation globale de "verre" du composant.
Le composant LiquidGlass
Maintenant que nous avons une compréhension de base des concepts derrière l'effet verre liquide, examinons de plus près le composant LiquidGlass
et ses propriétés (props).
Le composant LiquidGlass
est le composant principal de la bibliothèque. C'est un composant hautement personnalisable qui vous permet de contrôler chaque aspect de l'effet verre liquide.
Voici quelques-unes des propriétés clés que vous pouvez utiliser pour personnaliser le composant :
displacementScale
: Contrôle l'intensité de l'effet de distorsion. Une valeur plus élevée donnera un aspect plus déformé, "ondulant".blurAmount
: Contrôle la quantité de flou appliquée à l'arrière-plan.saturation
: Contrôle la saturation de l'arrière-plan.aberrationIntensity
: Contrôle l'intensité de l'effet d'aberration chromatique.elasticity
: Contrôle la mesure dans laquelle le composant "s'étire" vers le curseur de la souris. Cela crée un effet interactif amusant.cornerRadius
: Contrôle le rayon des coins du composant.mode
: Contrôle la carte de déplacement utilisée. Vous pouvez choisir entrestandard
,polar
,prominent
, etshader
.overLight
: Un booléen qui, lorsqu'il est vrai, rend le verre plus sombre pour une meilleure visibilité sur les arrière-plans clairs.
Personnalisation
Le vrai plaisir commence lorsque vous commencez à jouer avec les propriétés du composant LiquidGlass
. En combinant différentes propriétés, vous pouvez créer une large gamme d'effets uniques et intéressants.
Voici un exemple d'un composant LiquidGlass
plus personnalisé :
import React from 'react';
import LiquidGlass from 'liquid-glass-react';
function App() {
return (
<div className="App">
<LiquidGlass
displacementScale={100}
blurAmount={0.5}
saturation={140}
aberrationIntensity={2}
elasticity={0.35}
cornerRadius={32}
mode="polar"
overLight={false}
>
<div style={{ padding: '20px' }}>
Customized Liquid Glass
</div>
</LiquidGlass>
</div>
);
}
export default App;
Dans cet exemple, nous avons augmenté le displacementScale
pour créer une distorsion plus prononcée, et nous avons défini le mode
sur polar
pour utiliser la carte de déplacement polaire. Nous avons également ajouté un peu d'elasticity
pour que le composant réagisse au curseur de la souris.

Conclusion
La bibliothèque liquid-glass-react
est un outil puissant et facile à utiliser pour créer de superbes effets de verre liquide dans vos applications React. Que vous soyez un designer expérimenté ou un développeur cherchant à ajouter un peu de style à vos projets, cette bibliothèque a quelque chose à offrir.
Avec ses vastes options de personnalisation et ses fonctionnalités avancées, la bibliothèque liquid-glass-react
est l'outil parfait pour créer la prochaine génération d'interfaces utilisateur. Alors qu'attendez-vous ? Essayez-le et voyez ce que vous pouvez créer !
Vous voulez une plateforme intégrée, tout-en-un, pour que votre équipe de développeurs travaille ensemble avec une productivité maximale ?
Apidog répond à toutes vos exigences et remplace Postman à un prix beaucoup plus abordable !