Encore : à quoi ressemble un design system déployé sur 45 plateformes

La plupart des conseils sur les design systems partent du principe qu'il s'agit d'un seul produit sur une ou deux interfaces. Encore a dû fonctionner sur des téléviseurs, des voitures, des montres et des enceintes, et l'équipe a publié un retour d'expérience sur les erreurs commises. La solution n'était pas d'agrandir la bibliothèque de composants, mais de mettre en place des couches et d'admettre explicitement qu'ils avaient, un temps, trop corrigé le tir.

Mis à jour 2026-07-27

Analyse indépendante basée sur les publications de l'équipe design de Spotify et sa documentation publique pour développeurs, rédigée pour ceux qui créent leurs propres systèmes. Identity Forge n'est pas affilié à Spotify et n'est pas approuvé par celui-ci. Spotify et son logo sont des marques déposées de leur propriétaire.

La contrainte qui a généré la structure

En 2019, la direction de Spotify a voulu rendre l'audio disponible et cohérent sur n'importe quel appareil. Les chiffres publiés par l'équipe design sont frappants : 45 plateformes uniques et plus de 2 000 types d'appareils répartis sur 200 marques. Un utilisateur lance une playlist sur la télévision du salon, la continue dans sa voiture et la reprend sur son ordinateur portable le lendemain matin.

Il ne s'agit pas simplement d'une version agrandie du problème habituel des design systems. C'est un problème différent. Un téléviseur se regarde à trois mètres, une montre doit tout condenser, un ordinateur de bureau dispose d'un espace conséquent et une voiture impose des contraintes légales sur l'interaction. Aucune bibliothèque de composants unique ne peut répondre à tous ces besoins, et aucune documentation ne peut compenser cela.

Des couches concentriques plutôt qu'une bibliothèque plate

Encore a été lancé avec deux segments. Encore Consumer Mobile était décrit comme incroyablement flexible, un vaste catalogue de composants en croissance constante pour les expériences centrées sur le mobile. Encore Web desservait une gamme plus large de produits web. Sous ces deux segments se trouvaient les design tokens couvrant les décisions fondamentales comme les palettes de couleurs et les styles typographiques.

Le modèle publié est concentrique. La foundation est au centre. Le Web et le Mobile se situent au-dessus en tant que sous-systèmes pairs avec une parité de plateforme. Plus loin se trouvent les sous-systèmes plus spécialisés — Content Web Platform, Advertising Web, Consumer Mobile — chacun divergeant progressivement du cœur.

GèreConsumer
FoundationDesign tokens : couleurs, typographie, décisions immuablesTous les sous-systèmes, par transitivité
Web / MobileComposants multiplateformes conçus en binôme, avec paritéÉquipes produit de la plateforme concernée
Sous-systèmes spécialisésComposants spécifiques à un domaine produitUn domaine produit — publicité, outils de contenu, application grand public
Ce que chaque anneau gère et à qui il s'adresse.

L'intérêt de cette structure est que la divergence est bornée et localisée. Un composant dont seule la publicité a besoin réside dans l'anneau publicité, où il ne peut pas s'infiltrer dans l'application grand public. Une décision de couleur réside dans la foundation, où elle ne peut être modifiée localement. L'alternative — une bibliothèque plate unique pour tous — force chaque besoin spécialisé soit à être absorbé par le cœur, l'encombrant, soit à être construit en dehors du système, ce qui est le début de la fin pour tout design system.

Le pendule

Voici un point rarement abordé dans les écrits sur les design systems, car il s'agit d'un aveu. En 2022, l'équipe a jugé que le pendule avait trop basculé vers la flexibilité et qu'un recalibrage était nécessaire.

Le scénario est classique. Consumer Mobile était délibérément flexible, alors les équipes produit ont demandé des composants toujours plus raffinés, et le système a toujours accepté. Une flexibilité qui commence comme un atout devient une obligation : chaque besoin spécifique d'une équipe se transforme en un nouveau composant dont le système est responsable, et le catalogue croît plus vite que n'importe qui ne peut le maintenir de manière cohérente.

C'est un mode de défaillance dont la plupart des conseils sur les design systems ne parlent pas, car ils sont généralement rédigés par des personnes confrontées au problème inverse : un système rigide que personne n'adopte. Les deux échecs sont réels. Un système qui dit trop souvent « non » est contourné ; un système qui dit trop souvent « oui » cesse d'être un système pour devenir un dossier partagé.

La correction apportée par Spotify est intéressante. Ils n'ont pas restreint Consumer Mobile ni commencé à rejeter les demandes. Ils ont formé une équipe pour créer des composants réutilisables pour Encore Mobile — insérant ainsi une nouvelle couche entre Consumer Mobile et la fondation. La description officielle de son objectif est précise : elle sert de première ligne de défense, réduisant la pression sur Consumer Mobile pour fournir chaque composant lui-même, tout en créant une plus grande parité de plateforme sur le reste du système.

La solution pour un sous-système submergé de demandes n'a pas été de les refuser, mais de construire la couche inférieure qui aurait dû y répondre.

Cela recadre un problème de gouvernance en un problème structurel. Lorsqu'un sous-système reçoit des demandes qui ne lui sont pas réellement spécifiques, le problème ne vient pas des demandes, mais de l'absence d'une couche partagée. Dire non aurait poussé ces équipes à construire en dehors du système. L'ajout de cette couche a permis de capturer ce travail.

Comment un composant multiplateforme est réellement conçu

Le récit du processus de travail de l'équipe est suffisamment concret pour être copié, et le changement crucial qu'ils soulignent est que les composants multiplateformes sont désormais conçus comme tels dès le départ, et non comme une adaptation après coup.

  1. 1

    Réunir toutes les plateformes

    Les représentants d'iOS, d'Android et du Web ensemble, avant toute phase de conception. Leur argument sur la nécessité de cette approche est pertinent : il est rare de trouver quelqu'un d'expert à la fois en web et en mobile, l'expertise doit donc être assemblée plutôt que présumée.

  2. 2

    Chaque plateforme audite et schématise ce qui est unique à son interface

    Le desktop dispose de plus d'espace. La télévision est différente en raison de la distance de visionnage. Une montre nécessite que toutes les informations soient condensées. Ces éléments sont posés comme des faits liés à l'interface avant même que l'on ne débatte du composant.

  3. 3

    S'aligner sur les termes, les états et l'interaction des propriétés

    Le groupe de travail définit la nomenclature, les états existants et la manière dont les propriétés se combinent. C'est l'étape qui est souvent sautée, et c'est précisément pour cela que deux plateformes finissent avec un composant qui partage un nom, mais rien d'autre.

  4. 4

    Concevoir le composant en tenant compte de tous ces éléments simultanément

    Il ne s'agit pas de créer la version d'une plateforme puis de l'adapter. C'est un seul composant dont les variantes étaient connues avant même d'être dessinées.

La troisième étape est celle qu'il vaut la peine d'emprunter, quel que soit votre nombre de plateformes. La plupart des dérives de composants commencent par une dérive du vocabulaire : le « secondaire » d'une équipe est le « ghost » d'une autre, l'état désactivé de l'une est le mode lecture seule de l'autre, et le temps que quelqu'un s'en aperçoive, les deux sont déjà en production.

L'autre document de design de Spotify

En cherchant le design system de Spotify, l'un des premiers résultats est le guide public « Design & Branding Guidelines » sur le site développeur. Il est important de préciser qu'il ne s'agit pas d'Encore, ni d'un design system au sens habituel. C'est un document de conformité.

Sa structure le trahit : attribution, utilisation du contenu Spotify, navigation dans le contenu, liens vers Spotify, vues de lecture, affichage d'entités, utilisation du logo, utilisation des couleurs, restrictions de logo et de nom, polices. La raison invoquée pour les règles d'attribution est que le contenu disponible via Spotify appartient à de nombreux ayants droit différents ; ainsi, toute utilisation des métadonnées de Spotify — noms d'artistes, d'albums et de pistes, visuels, lecture audio — doit être accompagnée de la marque Spotify. La page précise que l'utilisation de ces ressources implique l'acceptation des conditions d'utilisation du développeur.

EncorePartner Design Guidelines
ObjectifCohérence entre les propres interfaces de SpotifyConformité des licences pour les tiers
AudienceDesigners et ingénieurs de SpotifyDéveloppeurs externes
Appliqué parAdoption, revue, outillageConditions d'utilisation
DitVoici comment construire SpotifyVoici ce que vous devez et ne devez pas faire avec notre marque
PublicNonOui
Deux documents provenant de la même entreprise, avec des rôles totalement différents.

Cette distinction est cruciale si vous construisez un produit qui intègre le contenu ou la marque d'un tiers. Ces règles sont contractuelles, et l'argument « c'était plus joli sans le logo » n'est pas recevable. C'est également important en tant que catégorie : si votre produit est consommé par les produits d'autres personnes, vous pourriez avoir besoin de ce document en plus d'un design system, et ce ne sont pas les mêmes exercices de rédaction.

Les couches, appliquées à un système lu par un agent

Le modèle concentrique se transpose directement aux guides de design rédigés pour les agents de code IA, et il résout un problème qui apparaît dès qu'un projet possède plus d'un type d'interface.

L'échec classique consiste à utiliser un seul fichier DESIGN.md pour couvrir à la fois un site marketing, le shell d'une application et un tableau de données dense. Les règles finissent par être nuancées — « espacement généreux, bien que les tableaux puissent être plus denses » — or une règle nuancée n'est pas une règle. Le modèle doit trancher, et il tranche différemment à chaque fois.

La superposition de couches fonctionne de la même manière que dans Encore :

# DESIGN.md          <- foundation: tokens, roles, prohibitions
                        applies everywhere, never overridden

# app/marketing/DESIGN.md
   Extends the root. Spacing scale shifted up one step.
   Hero type may use the display scale (48px+).
   Cards may use shadow elevation.

# app/dashboard/DESIGN.md
   Extends the root. Compact spacing (8-12px controls).
   Elevation is surface steps + hairline, never shadow.
   Table rows: 32px, no vertical padding above 8px.

Chaque fichier est sans ambiguïté dans son propre périmètre. La racine ne contient que ce qui ne doit absolument pas varier — rôles de couleurs, famille typographique, interdictions — et les feuilles contiennent les décisions qui diffèrent légitimement. Un agent travaillant dans app/dashboard/ lit deux fichiers et obtient une réponse unique et claire, plutôt qu'un seul fichier truffé de réserves.

Nous avons analysé 299 fichiers DESIGN.md publiés pour être lus par des agents. 44 % ne contenaient aucune valeur de taille concrète et 54 % s'appuyaient sur au moins un adjectif vague — « clean » dans 39 % des cas, « moderne » dans 36 %. C'est l'exemple extrême du problème de nuance : un fichier qui ne s'engage jamais sur un chiffre ne peut pas être en contradiction avec lui-même, mais il ne peut pas non plus produire une interface cohérente.

Les kits de design d'Identity Forge sont des couches de fondation exactement dans ce sens : des rôles de couleurs sémantiques pour les modes clair et sombre, une échelle de typographie et d'espacement, des motifs, et une liste explicite de recommandations (« do's and don'ts »), le tout sérialisé dans un DESIGN.md lu par un agent. Parcourez les kits ou découvrez ce qu'est un fichier DESIGN.md.

Ce qu'il faut retenir d'Encore

Vous n'avez probablement pas 45 plateformes. Vous avez peut-être trois surfaces, dont deux ont divergé discrètement, et une équipe qui demande sans cesse un composant que personne d'autre ne veut. C'est le même problème, à une échelle réduite, et les solutions d'Encore s'appliquent également à cette taille.

Placez ce qui ne doit pas varier dans une fondation et rendez-le véritablement non modifiable. Laissez les besoins spécialisés dans des couches spécialisées plutôt que de les forcer dans le cœur du système ou de les en exclure totalement. Lorsqu'une couche est submergée de demandes, cherchez la couche manquante en dessous avant de commencer à refuser. Et concevez pour toutes les surfaces simultanément, car un composant adapté a posteriori est un composant qui divergera.

Puis-je utiliser le design system Encore de Spotify ?

Non. Encore est interne et n'est publié ni comme package installable, ni comme site de documentation publique. Ce qui est public, ce sont les écrits de l'équipe design de Spotify sur sa structure et son évolution, lesquels constituent la source de toute cette analyse.

Quelle est la différence entre Encore et les Design Guidelines de Spotify ?

Encore est le design system interne utilisé pour construire les propres produits de Spotify. Les Design & Branding Guidelines sur developer.spotify.com sont des règles pour les développeurs tiers qui intègrent du contenu Spotify — attribution, utilisation du logo, restrictions de couleurs et de nommage — et sont appliquées via les Conditions d'Utilisation du Développeur plutôt que par adoption.

Pourquoi Spotify a-t-il ajouté une couche au lieu d'ajouter des composants ?

Parce que les demandes adressées à Encore Consumer Mobile n'étaient pas réellement spécifiques au mobile grand public. Une nouvelle couche entre celle-ci et la fondation a permis de capturer ce travail commun, de réduire la charge du sous-système spécialisé et d'augmenter simultanément la parité entre les plateformes. Refuser ces demandes aurait poussé les équipes à construire en dehors du système.

Ai-je besoin de couches si je n'ai qu'un seul produit ?

Seulement si ce produit possède des surfaces avec des besoins réellement différents — un site marketing et un tableau de bord dense, par exemple. Le test consiste à vérifier si vos règles contiennent des réserves. Une règle qui stipule « espacement généreux, bien que les tableaux puissent être plus denses » est en réalité deux règles qui prétendent n'en former qu'une, et elle doit être répartie dans deux fichiers.

Qu'est-ce que le « pendule de la flexibilité » ?

Un design system conçu pour être flexible attire des demandes de composants toujours plus spécifiques, et y répondre fait croître le catalogue au-delà du point de cohérence. À l'inverse, un système trop strict est contourné. Ce sont deux échecs bien réels ; Spotify a publié le fait qu'ils ont rencontré le premier et ont dû se recalibrer, ce que la plupart des équipes ne font pas.