Bibliothèque UI personnelle · depuis 2024

Udixio UI

Une bibliothèque de 20 composants inspirés de Material 3, disponible pour React et Angular et éprouvée sur ce portfolio.

Plusieurs variantes colorées d’une même interface créées avec Udixio UI
Un même écran, plusieurs thèmes générés par la bibliothèque.

À retenir

Ce qui existe concrètement aujourd’hui.

20 composants publiés et documentés, du bouton au sélecteur de date.
Un même catalogue de composants disponible pour React et Angular.
Le portfolio utgareilise directement la bibliothèque en production.

Étude de cas

Construire une bibliothèque, puis la confronter à l’usage.

Le catalogue n’est que la partie visible : l’enjeu est de faire tenir ensemble les API, les interactions, les thèmes et la documentation.

Le constat

La cohérence se perd une décision après l’autre.

Une interface ne devient pas incohérente d’un seul coup. Une nouvelle page introduit un espacement différent, un formulaire gère autrement ses erreurs, puis un bouton réagit différemment au clavier. À mesure que le produit grandit, chaque écran ajoute ses propres décisions et rend les suivants plus coûteux à concevoir et à maintenir.

J’ai commencé Udixio UI en 2024 pour réunir ces décisions dans une même bibliothèque. L’objectif n’était pas de donner la même apparence à tous les produits, mais de leur fournir des composants cohérents qu’ils puissent adapter à leur identité.

Le catalogue

20 composants couvrent les interactions essentielles.

La bibliothèque compte aujourd’hui 20 composants publiés et documentés. Ils couvrent les actions, la saisie, la navigation, la présentation de contenu et le retour d’état.

  • Actions : Button, IconButton, Fab et FabMenu
  • Saisie : TextField, Checkbox, Switch, Slider et DatePicker
  • Navigation : Menu, NavigationRail et Tabs
  • Contenu et retours : Card, Carousel, SideSheet, Snackbar, Tooltip et ProgressIndicator

Chaque composant possède une page dédiée avec son usage, ses variantes et des exemples. Le catalogue complet est consultable dans la documentation publique d’Udixio UI.

L’architecture

React et Angular partagent les mêmes règles, pas du code dupliqué.

Material 3 fournit le référentiel de conception ; Udixio UI en propose une implémentation TypeScript. Le même catalogue est disponible pour React et Angular afin qu’un produit retrouve les mêmes propriétés, les mêmes états et les mêmes comportements quel que soit son framework.

Le travail ne s’arrête pas au rendu visuel. Pour chaque composant, je dois aussi définir son API, les interactions au clavier et au toucher, la gestion du focus, les états désactivés ou chargés, puis maintenir leur documentation et leurs tests.

La personnalisation

Le thème change l’identité sans réécrire les composants.

Une bibliothèque commune ne doit pas obliger plusieurs produits à se ressembler. Udixio UI génère donc un thème Material 3 à partir d’une couleur principale, puis applique les rôles de couleur, la typographie et les états d’interaction à l’ensemble des composants.

Cette séparation permet de faire évoluer l’identité visuelle sans reprendre chaque bouton, champ ou menu. Les comportements restent stables tandis que le thème porte la personnalité du produit.

La validation

La bibliothèque évolue au contact de produits réels.

Je conçois l’architecture, les API, les composants React et Angular, le système de thèmes et la documentation. Cette responsabilité de bout en bout me permet de corriger une règle commune plutôt que ses conséquences dans chaque application.

Les besoins rencontrés ici nourrissent la bibliothèque ; les corrections apportées à la bibliothèque bénéficient ensuite à tous les écrans qui l’utilisent. Ce cycle est ce qui transforme progressivement une collection de composants en bibliothèque maintenable.

Premier échange

Faites le point sur votre projet. Je vous aide à définir la prochaine étape.

Présentez-moi le contexte et ce qui existe déjà. Je vous réponds avec les premières questions utiles pour cadrer la suite.