Expérimentations · S27–S29

Outils
interactifs.

Trois outils conçus dans le design system Liova. Cartes de visite, typographie, palettes — tout fonctionne en pur CSS/JS, sans librairie.

S27 · Card Builder S28 · Liova Type S29 · Liova Palette
Mode d'emploi

Comment utiliser
ces outils ?

Chaque outil génère du CSS ou un lien prêt à l'emploi. Trois étapes, c'est tout.

01
Configure dans l'outil
Ajuste les curseurs, choisis les couleurs, tape tes infos. L'aperçu se met à jour en temps réel — pas besoin de valider.
02
Clique "Copier le CSS"
Chaque outil a un bouton de copie. Le code généré est immédiatement dans ton presse-papier, propre et prêt à coller.
03
Colle dans ton projet
Colle dans ton fichier .css, dans une balise <style>, ou dans ton design system. Fonctionne partout.
S27 · Expérimentation

Card Builder — Cartes de visite digitales

Remplis le formulaire, choisis un style et une couleur. La carte se met à jour en temps réel. Partage le lien — tout est encodé dans l'URL.

Lien copié !
Comment utiliser
La carte générée est partageable par lien — toutes les données sont encodées dans l'URL, aucun serveur impliqué.
/* Usages typiques */
- Lien dans ta signature email
- Lien sur ton profil LinkedIn / portfolio
- QR code généré depuis l'URL (ex : qr-code-generator.com)
- Envoyer à un client pour présenter ton identité
💡 Le lien fonctionne même hors connexion — tout est dans le fragment #card= de l'URL.
S
Sophie Laurent
Creative Director
Liova Studio
sophie@liova.co +33 6 12 34 56 78
S28 · Expérimentation

Liova Type — Combinaisons typographiques

Clique sur une police titre et une police corps. Vois le rendu en live sur trois maquettes différentes : landing, article, cartes.

Comment utiliser
Une fois ta combinaison choisie, ajoute les polices via Google Fonts dans le <head> de ton HTML, puis applique-les dans ton CSS.
<!-- Dans ton <head> -->
<link href="https://fonts.googleapis.com/css2?
  family=Playfair+Display:wght@700;900
  &family=Inter:wght@400;500
  &display=swap" rel="stylesheet">

/* Dans ton CSS */
h1, h2, h3 { font-family: 'Playfair Display', serif; }
body, p    { font-family: 'Inter', sans-serif; }
💡 Remplace les noms de polices par ceux que tu as sélectionnés dans l'outil.
Pairing Sélectionne une combinaison pour voir la description.
Studio.
Design qui
provoque.
Nous créons des identités visuelles qui s'imposent par leur clarté, leur cohérence et leur pouvoir d'attraction naturel.
Voir nos projets →
Design · Typographie
Pourquoi la typographie est le premier langage du design
Par Liova Studio · 12 mai 2026 · 6 min de lecture
Avant la couleur, avant l'image, avant la mise en page — la typographie parle. Elle porte une voix, une époque, une intention. Un texte composé en Helvetica n'est pas le même texte composé en Garamond.
La forme comme sens
Chaque police est une décision. Choisir un caractère, c'est choisir un registre : académique, moderne, ludique, formel. La neutralité n'existe pas en typographie — elle est toujours une posture.
Branding
Identité visuelle complète
Du logo au système graphique, nous construisons une marque cohérente à travers tous les points de contact.
Digital
Design d'interface & UX
Sites, apps, design systems. Chaque pixel porte une intention. Chaque interaction a du sens.
Direction artistique
Campagnes & éditorial
Conception de campagnes, direction de shootings, mise en page éditoriale. Le regard qui fait la différence.
Conseil
Audit & stratégie de marque
Analyse de l'identité actuelle, recommandations et feuille de route. Du diagnostic à l'exécution.
S29 · Expérimentation

Liova Palette — Générateur dark UI

Entre une couleur source, génère une palette complète pour une interface sombre. Les composants se mettent à jour en temps réel. Exporte les variables CSS.

Couleur source
Valeur hex
Presets
Copié !
Comment utiliser
Copie le bloc :root {} et colle-le en haut de ton fichier CSS. Utilise ensuite les variables partout dans ton projet.
/* Colle ça dans ton CSS global */
:root {
  --pal-bg: #080808;
  --pal-accent: #c8921a;
  /* ... autres variables ... */
}

/* Puis utilise dans ton CSS */
body        { background: var(--pal-bg); }
.btn        { background: var(--pal-accent); }
.card       { background: var(--pal-surface); }
💡 Changer une seule variable met à jour tout le site automatiquement — idéal pour un design system.
Palette générée
Boutons & Badges
Actif Erreur Succès Archivé
Formulaire
Carte UI
Progression 68%
Statut En cours
Projet Liova Lab
Export CSS variables
:root {
  /* génération en cours... */
}
S30 · CSS Builder

Shadow Builder — box-shadow en direct

Ajuste les paramètres, empile plusieurs ombres, copie le CSS. L'aperçu se met à jour en temps réel.

Offset X0
Offset Y20
Blur40
Spread-8
Opacité60
Copié !
Comment utiliser
Copie la valeur et applique-la à n'importe quel élément HTML via la propriété box-shadow.
/* Dans ton CSS */
.ma-carte {
  box-shadow: 0px 20px 40px -8px rgba(0,0,0,0.60);
}

/* Ombre au survol */
.ma-carte:hover {
  box-shadow: 0px 32px 60px -10px rgba(0,0,0,0.80);
  transition: box-shadow .3s ease;
}
box-shadow: none;
S31 · CSS Builder

Gradient Maker — linear, radial, conic

Compose ton dégradé, ajoute des stops de couleur, ajuste les positions. Copie le CSS prêt à l'emploi.

135°
background: linear-gradient(...);
Copié !
Comment utiliser
Le gradient peut s'appliquer à un fond, un texte, une bordure ou un bouton.
/* Fond d'une section */
.hero { background: linear-gradient(135deg, #c8921a 0%, #080808 100%); }

/* Texte dégradé */
h1 {
  background: linear-gradient(90deg, #c8921a, #fff);
  -webkit-background-clip: text;
  color: transparent;
}
S32 · Motion

Cubic Bezier — courbes d'easing

Glisse les points de contrôle sur la courbe. La balle anime avec ta fonction. Copie le cubic-bezier() pour ton CSS.

cubic-bezier(0.25, 0.1, 0.25, 1.0)
Presets
Copié !
Comment utiliser
Remplace n'importe quel ease, ease-in-out par ta valeur copiée.
/* Transition sur un bouton */
.btn {
  transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
}

/* Animation CSS */
.modal {
  animation: appear 0.5s cubic-bezier(0.25, 0.1, 0.25, 1) both;
}

/* En JS (GSAP, Framer, anime.js) */
easing: "cubic-bezier(0.34, 1.56, 0.64, 1)"
S33 · Composant

Button Customizer — style sur mesure

Configure chaque paramètre du bouton. Hover effect, couleurs, typographie, forme. Copie le CSS complet.

#c8921a
#0f0e0b
Radius8px
Padding V12px
Padding H24px
Font size14px
Copié !
Comment utiliser
Le CSS copié contient le style de base et le hover. Colle-le dans ton CSS et ajoute la classe .btn à ton bouton HTML.
<!-- Dans ton HTML -->
<button class="btn">Découvrir →</button>
<a href="#" class="btn">Voir le projet</a>

/* Dans ton CSS — colle le code copié */
.btn { /* ... valeurs générées ... */ }
💡 La classe .btn fonctionne sur un <button> ou un <a>.
S34 · DA / Accessibilité

Contrast Checker — WCAG AA & AAA

Entre deux couleurs et vois instantanément le ratio de contraste WCAG et les niveaux de conformité.

Ratio de contraste
AA Normal≥ 4.5:1
AAA Normal≥ 7:1
AA Large≥ 3:1
UI Components≥ 3:1
Comment utiliser
Le ratio WCAG détermine si ton texte est lisible pour les personnes malvoyantes. Les seuils à retenir :
/* Seuils WCAG 2.1 */
Ratio ≥ 4.5:1  → Texte normal    — AA  ✓ (minimum légal)
Ratio ≥ 7.0:1  → Texte normal    — AAA ✓ (idéal)
Ratio ≥ 3.0:1  → Texte ≥ 18px   — AA  ✓
Ratio ≥ 3.0:1  → Boutons / icônes — AA  ✓

/* Si tu ne passes pas AA, essaie */
- Foncer le fond ou éclaircir le texte
- Augmenter la taille de police (≥ 18px → seuil 3:1)
💡 Les grandes marques (Apple, Google, Stripe) visent systématiquement AA minimum sur tous leurs textes.
Design intentionnel.
Ceci est un texte de taille normale (16px) affiché avec les couleurs sélectionnées. La lisibilité dépend du ratio de contraste.
Texte de petite taille — plus difficile à lire si le contraste est insuffisant.
S35 · Motion

Micro-interactions — 6 effets hover & click

Passe la souris, clique. Chaque bouton montre un effet différent — tout en CSS/JS natif, zéro librairie.

Comment utiliser
Chaque effet est reproductible en CSS/JS pur. La méthode la plus rapide — demande à Claude de reproduire l'effet sur ton propre bouton.
/* Exemple — Ripple effect */
.btn { position: relative; overflow: hidden; }

/* Exemple — Lift + glow */
.btn:hover {
  transform: translateY(-4px);
  box-shadow: 0 0 24px rgba(200,146,26,.5);
  transition: all .3s ease;
}

/* Exemple — Morph */
.btn:hover { border-radius: 50px 8px 50px 8px; }
💡 Pour le ripple et le magnétique, quelques lignes de JS sont nécessaires — inspecte le code source de cette page pour les voir.
Lift + glow
Ripple
Magnetic
Morph
Fill slide
Shake