Nouveau système de thèmes dans DbGate
Published: 2026-01-23
Pendant plusieurs années, DbGate a conservé le même système de thèmes. Avec la version 7.0.0, nous avons introduit un tout nouveau système de thèmes basé sur des fichiers JSON. Malheureusement, les anciens thèmes personnalisés implémentés sous forme de plugins ne sont plus pris en charge.
Nous apprécions profondément que des membres de la communauté DbGate aient créé des thèmes pour DbGate, et nous regrettons que les thèmes créés précédemment ne soient plus pris en charge. C’est pour cette raison que nous avons repoussé cette décision pendant longtemps. Cependant, avec le temps, l’impossibilité de faire évoluer le design est devenue de plus en plus difficile à soutenir. Nous avons finalement décidé d’opérer un changement radical et de revoir complètement le système de thèmes.
Dans cet article, j’expliquerai pourquoi nous avons effectué ce changement et comment fonctionne le nouveau système de thèmes.
Système de thèmes figé dans DbGate jusqu’à la version 6.x
DbGate disposait d’un système de thèmes relativement simple jusqu’à la version 6.x. Il utilisait un petit nombre de variables CSS pour définir les couleurs. Ces variables CSS n’étaient pas liées à des éléments d’interface spécifiques, mais étaient plus génériques (comme --font-color-1, --font-color-2, --background-color-1, --background-color-2, etc.). Bien que ce système ait facilité la création de nouveaux thèmes, il était assez limité. Il n’était pas possible de définir indépendamment des styles pour des éléments d’interface spécifiques. Le système figeait également le design de l’application, car la modification d’une variable CSS de couleur affectait l’ensemble de l’application plutôt que des parties spécifiques.
Thématisation basée sur les éléments dans DbGate 7.0.0
Dans DbGate 7.0.0, nous avons introduit un tout nouveau système de thèmes basé sur des fichiers JSON. Dans le nouveau système, chaque élément d’interface possède son propre ensemble de variables CSS définissant les couleurs, bordures et autres propriétés de style. Cela offre beaucoup plus de flexibilité pour définir des thèmes. Le thème est désormais défini par un nombre bien plus important de variables CSS, chacune liée à des éléments d’interface spécifiques (comme --data-browser-font-color, --data-browser-background-color, --button-font-color, --button-background-color, etc.).
À l’ère du contenu généré par l’IA, nous voulions qu’il soit facile de créer des thèmes personnalisés à l’aide de l’IA, ce qui nécessitait un contrôle plus détaillé de l’apparence de l’application. De plus, avec l’IA capable de prendre en charge ce travail, le coût de maintenance d’un plus grand nombre de variables CSS est devenu négligeable, tandis que les avantages en termes de flexibilité de design sont significatifs.
Documentation des thèmes personnalisés
Générer des thèmes avec l’IA
L’édition DbGate Premium inclut une nouvelle fonctionnalité d’assistant de thème IA. Cette fonctionnalité permet aux utilisateurs de créer des thèmes personnalisés à l’aide de l’IA. Il suffit de décrire le thème souhaité en langage naturel, et l’assistant IA générera un thème basé sur votre description. Vous pouvez également modifier le thème généré simplement en décrivant les changements que vous souhaitez effectuer.
Partager des thèmes via DbGate Cloud
Nous avons amélioré la base de connaissances publique de DbGate pour prendre en charge le partage de thèmes personnalisés. Créez simplement votre thème (définissez les variables CSS dans un fichier JSON). Vous pouvez vous inspirer du thème Solarized clair code source. Nous vous encourageons à utiliser l’assistant IA pour créer la première version de votre thème. Pour la publication, créez simplement une pull request vers le référentiel de la base de connaissances publique DbGate. Après la fusion, votre thème sera disponible pour tous les utilisateurs de DbGate dans le sélecteur de thèmes (également avec un aperçu basé sur les couleurs de votre thème).