« Pixel-perfect » est un terme galvaudé. Chez nous, c'est une méthode, pas un slogan.
Un système, pas des pages
Un design qui s'intègre bien en code est un design pensé en tokens. Couleurs, espacements, rayons, typographies : tout est défini une fois, utilisé partout.
L'échelle d'espacement
Notre échelle par défaut suit une progression géométrique en base 4 :
| Token | Pixels | Usage |
|---|---|---|
space-1 | 4px | Espacement minimal, entre icône et texte |
space-2 | 8px | Padding compact (boutons small) |
space-3 | 12px | Gaps entre items d'une liste |
space-4 | 16px | Padding standard |
space-6 | 24px | Sections internes |
space-8 | 32px | Marges entre blocs |
space-12 | 48px | Séparation sections majeures |
Cette progression suit la relation , ce qui garantit une cohérence mathématique et facilite les calculs au vol :
Les outils qui aident
- Figma Variables pour les tokens partagés entre design et code
- Tailwind v4 avec
@theme inlinepour refléter les variables CSS - Code Connect pour lier les composants Figma aux composants React
Un exemple de mapping
/* globals.css */
@theme inline {
--spacing-1: 4px;
--spacing-2: 8px;
--spacing-3: 12px;
--spacing-4: 16px;
}
// Button.tsx
<button className="px-4 py-2 gap-2">
<Icon />
Démarrer
</button>
Côté Figma, la même variable space/2 contrôle le gap dans le composant bouton. Si un designer change la valeur, le code suit automatiquement.
Le vrai test
Superposez le design Figma et le site livré. Si l'écart est supérieur à 2px sur un élément clé, il y a un problème.
Proportions : la suite de Fibonacci en design
Pour les grilles et ratios, on revient souvent au nombre d'or :
Une colonne de contenu principale de 720px avec une sidebar à px crée une tension visuelle naturelle. Ce n'est pas magique, c'est géométrique.
Le résultat
Quand le système est posé, la vélocité explose. Un nouveau composant prend 30 minutes au lieu de 3 heures. Et surtout : personne ne discute des pixels, parce qu'ils sont définis au bon endroit, une seule fois.