DevNews

Shopify réécrit ses thèmes avec 93 % de code en moins

Sur cette page
  1. De la configuration au balisage
  2. Les deux nouvelles primitives
  3. L'argument en faveur du balisage
  4. La partie sur laquelle il faut s'arrêter
  5. Sources et pour aller plus loin

Shopify montre en avant première le successeur de Horizon, son thème de boutique de référence, et le chiffre qui l'accompagne est une réduction de 93 pour cent des lignes de code. Le mécanisme est un abandon des fichiers de configuration JSON au profit de HTML simple interpolé avec Liquid, le langage de gabarits maison, plus deux nouvelles primitives en avant première développeur : une balise block composable à paramètres typés, et une balise partial qui délimite une zone rendue côté serveur que JavaScript peut rafraîchir seule. La raison invoquée mérite discussion. Ben Sehl, directeur produit des boutiques, dit que les modèles comprennent déjà le HTML, et que ce format est expressif et économe en jetons.

The short answer

Shopify montre en avant première le successeur de son thème de référence Horizon, avec 93 pour cent de lignes de code en moins. Les gabarits passent d'une configuration JSON à du HTML interpolé avec Liquid, soutenus par deux nouvelles balises en avant première développeur : block, qui rend un bloc de thème réutilisable avec des paramètres typés, et partial, qui délimite une zone rendue côté serveur que JavaScript peut rafraîchir sans rechargement complet. Vingt nouvelles règles de validation couvrent contrats, structure et complexité. Shopify attribue la réécriture à la façon dont son assistant Sidekick édite les thèmes.

93 %de lignes de code en moins que Horizon
20 %des marchands Shopify utilisent Sidekick
25 Mde modifications de thème générées en 2026
Carte réponse : le successeur du thème de boutique Horizon de Shopify compte 93 pour cent de lignes de code en moins, remplaçant la configuration JSON par du HTML interpolé avec Liquid, avec une balise block composable à paramètres typés et une balise partial pour les zones rendues côté serveur, toutes deux en avant première développeur en juillet 2026.
Une couche de gabarits réécrite à cause de qui la lit désormais. Source : Shopify, rapporté par The Register. PNG

Il existe une lecture de cette histoire où une entreprise fait quelque chose pour des raisons d'IA. La lecture plus intéressante, c'est qu'une entreprise a reçu un prétexte mesurable pour corriger quelque chose qu'elle savait déjà mauvais.

De la configuration au balisage

Les thèmes Shopify dérivaient vers le JSON depuis des années, et la raison était bonne à l'époque. Si des marchands doivent réorganiser leur boutique via un éditeur visuel, le thème doit être décrit dans quelque chose qu'un programme peut manipuler sans danger. Le JSON est cette chose.

Le coût retombe sur celui qui ouvre le fichier. Les gabarits du thème Horizon actuel sont de longs documents structurés décrivant quelles sections apparaissent dans quel ordre avec quels réglages, et en lire un pour répondre à une question simple n'est pas une activité agréable.

Le nouveau thème remet du balisage. Vous ouvrez un gabarit et vous voyez du HTML, avec du Liquid interpolé dedans. L'affirmation qui l'accompagne est une réduction de 93 pour cent des lignes de code face à Horizon, ce qui est Shopify mesurant son propre avant et après plutôt qu'une vérité générale, mais la forme de l'économie est facile à croire : l'essentiel de ce qui disparaît est une configuration qui existait pour décrire une structure que le balisage décrit désormais lui même.

Les deux nouvelles primitives

Figure en liste décrivant les nouvelles primitives Liquid de Shopify : une balise block qui rend un bloc de thème réutilisable depuis un gabarit et accepte des paramètres typés comparables à des props de composant, une balise partial définissant une zone nommée de HTML rendue côté serveur que JavaScript peut rafraîchir sans rechargement complet, des actions standard pour des événements comme la mise à jour du panier, et vingt nouvelles règles de validation couvrant contrats, structure et complexité.
Les pièces qui rendent des gabarits centrés sur le balisage viables, et pas seulement plus courts. PNG

La balise block rend un bloc de thème réutilisable directement depuis un gabarit, et elle accepte des paramètres typés. Quiconque a écrit des composants dans un framework moderne reconnaîtra le motif immédiatement : ce sont des props, avec une forme déclarée, ce qui signifie que le contrat entre un bloc et ce qui le rend est écrit plutôt que déduit de ce qui fonctionne par hasard.

La balise partial définit une zone nommée de HTML rendue côté serveur que JavaScript peut rafraîchir sans recharger toute la page. C'est la pièce qui rend l'approche honnête. Revenir à du balisage rendu côté serveur n'est attirant que si vous pouvez encore mettre à jour un compteur de panier sans navigation complète, et partial est la façon de le faire sans déplacer le rendu dans un framework côté client.

Autour d'elles se trouvent des actions standard pour des événements courants comme la mise à jour du panier, vingt nouvelles règles de validation couvrant contrats, structure et complexité, et une syntaxe Liquid qui gère maintenant les expressions booléennes et les tableaux et objets littéraux. Ce dernier point paraît mineur et ne l'est pas : un langage de gabarits sans littéraux pousse les gens à construire des chaînes de caractères, et c'est en général là que commencent les parties illisibles.

Les deux balises sont en avant première développeur. Shopify ne s'est pas engagé sur une date de disponibilité générale, et le thème de référence est public sur GitHub si vous préférez lire la chose réelle plutôt que sa description.

L'argument en faveur du balisage

Ben Sehl, directeur produit des boutiques chez Shopify, donne trois raisons pour le HTML : les modèles le comprennent déjà, il est expressif, et il est économe en jetons.

Les trois tiennent. Le HTML est l'un des formats les plus représentés dans n'importe quel corpus d'entraînement. Il est local, au sens où un fragment vous dit ce qu'il fait sans exiger le reste du document, ce qui compte quand un modèle travaille dans une fenêtre limitée. Et il dit la même chose en moins de jetons que l'équivalent JSON, parce que le JSON dépense des caractères en structure que le balisage obtient par imbrication.

Le volume derrière la décision est ce qui en fait un argument économique et non esthétique. Shopify indique qu'environ vingt pour cent de ses marchands utilisent Sidekick pour éditer leurs thèmes, et que ces marchands ont généré vingt cinq millions de modifications de thème en 2026. À cette échelle, le taux d'échec d'un modèle éditant un format ingrat n'est pas un agacement de développeur. C'est un coût de support.

La partie sur laquelle il faut s'arrêter

Le principe énoncé est que les agents veulent ce que veulent les humains : du code lisible, des contrats explicites, des retours utiles.

C'est vrai, et cela l'a été depuis le début. Chacune de ces propriétés était déjà un argument pour nettoyer une couche de configuration générée, et dans la plupart des organisations c'était un argument qui perdait toujours face à autre chose à livrer. Ce qui a changé n'est pas le dossier technique. C'est que la réussite des modifications par agent se mesure d'une façon dont l'agacement des développeurs ne s'est jamais mesuré, donc le même travail porte maintenant un chiffre et ce chiffre entre dans un plan.

La lecture moins flatteuse des mêmes faits, c'est que quinze ans de formats conçus pour les machines ont produit des formats que ni les humains ni les machines ne lisent bien, et qu'il aura fallu un nouveau type de machine pour le rendre visible. Dans les deux cas, la conclusion pratique pour quiconque maintient une couche de gabarits ou de configuration est la même : si un modèle compétent peine à faire une petite modification correcte dans votre format, c'est une mesure de votre format, et vous pouvez désormais le dire avec des preuves.

Sources et pour aller plus loin

Questions fréquentes

Qu'est ce qui change réellement dans le nouveau thème ?

Les gabarits cessent d'être de la configuration JSON et deviennent du HTML interpolé avec Liquid. Dans le thème Horizon actuel, un répertoire de gabarits contient de longues structures JSON décrivant quelles sections apparaissent où et comment elles sont configurées, ce qui convient à une machine et se lit très mal. Dans le nouveau, vous ouvrez un gabarit et vous trouvez du balisage. Deux nouvelles balises Liquid soutiennent cela : une balise block qui rend un bloc de thème réutilisable directement depuis un gabarit et accepte des paramètres typés, et une balise partial qui nomme une zone de HTML rendue côté serveur que JavaScript peut rafraîchir sans recharger toute la page.

D'où vient le chiffre de 93 pour cent ?

C'est la comparaison faite par Shopify entre le nouveau thème et Horizon, mesurée en lignes de code. Prenez le pour ce qu'il est, une affirmation sur une base de code face à une autre plutôt qu'une loi générale sur JSON contre HTML. La direction reste la partie intéressante : la réduction vient de la suppression d'une configuration qui décrivait une structure, une fois cette structure exprimée directement dans un balisage qu'un humain comme un modèle peuvent lire.

Les balises block et partial sont elles disponibles maintenant ?

Elles sont en avant première développeur, et Shopify n'a pas publié de date de disponibilité générale. Avant première développeur signifie que vous pouvez construire dessus et que vous devez vous attendre à des évolutions. Le thème de référence est sur GitHub sous Shopify/reference-theme, l'endroit pratique où regarder si vous voulez voir à quoi ressemble réellement la nouvelle forme plutôt que de travailler sur sa description.

Pourquoi des agents IA pousseraient ils une entreprise à réécrire sa couche de gabarits ?

Parce qu'une grande part des modifications de thème sont désormais faites par un agent plutôt que tapées par un développeur. Shopify indique qu'environ vingt pour cent de ses marchands utilisent Sidekick pour éditer leurs thèmes, générant vingt cinq millions de modifications en 2026. Quand une telle part de votre trafic d'édition passe par un modèle, la lisibilité du format cesse d'être une question de confort développeur et devient une question de fiabilité. Le HTML est très représenté dans les données d'entraînement, il est local au sens où l'on comprend un fragment sans charger tout le fichier, et il coûte moins de jetons que le JSON équivalent.

Est ce que cela se transpose hors de Shopify ?

La leçon générale oui, et elle n'est pas nouvelle. Les formats lisibles, explicites sur leurs contrats et rapides à donner un retour sont plus faciles à manipuler, et c'était déjà vrai quand seuls des humains les lisaient. Ce qui a changé, c'est l'incitation : des équipes qui n'obtenaient jamais de budget pour nettoyer une couche de configuration générée disposent maintenant d'un argument mesurable, parce que le taux de réussite des modifications par agent se met sur une diapositive. La version inconfortable de la même observation, c'est qu'une décennie de formats pensés pour les machines a produit des choses que ni les humains ni les machines n'aiment particulièrement lire.

Advertisement