Craft Web Theme Loader utilisant ChatGPT 4

DEV - 26/02
Exigences User Story En tant qu'utilisateur d'une application Web, je souhaite choisir parmi plusieurs...

Exigences

Histoire d'utilisateur

En tant qu'utilisateur d'application Web, je souhaite choisir parmi plusieurs thèmes disponibles, parfois clairs, parfois sombres.

Bon de travail

Développez une API basée sur TypeScript qui fournit des fonctions ou des classes d'assistance pour créer un sélecteur de thème dans les applications Web. L'API doit être indépendante du framework, donnez donc des extraits de code pour l'application Angular et l'application React utilisant cette API.

Exigences fonctionnelles

  1. Prend en charge les thèmes clairs et sombres.
  2. Prend en charge plus de deux thèmes : au moins trois thèmes doivent être disponibles.
  3. Prend en charge les thèmes prédéfinis couramment utilisés, éventuellement combinés à une feuille de style de couleur spécifique à l'application, telle quecouleurs.css, avec une variante facultative du mode sombre commecouleurs-dark.css.
  4. Prise en charge de la commutation dynamique entre les thèmes au moment de l'exécution.
  5. Lorsque la même application/site Web est ouvert dans un autre onglet du navigateur, le thème explicitement sélectionné doit être conservé et appliqué.

Exigences techniques

  1. Réutilisable dans plusieurs applications.
  2. Surface API minimale pour garantir une personnalisation et une utilisation faciles.
  3. Neutre par rapport aux choix spécifiques de conception de l’interface utilisateur.
  4. Doit être efficace et éviter le scintillement visuel lors du démarrage et du changement de thème.
  5. Utilisable en SPA et PWA.
  6. Entièrement fonctionnel dans les environnements PWA, hors ligne et intranet.
  7. Réglable après la construction, le regroupement et le déploiement. Par exemple, un administrateur doit pouvoir modifier le nombre et l’ordre des thèmes disponibles, ainsi que modifier les fichiers de couleurs spécifiques à une application.
  8. Les thèmes peuvent être hébergés localement ou sur un CDN.
  9. La sélection d'un thème déjà chargé ne devrait pas déclencher un rechargement du thème.
  10. La gestion des thèmes...
    [Courte citation de 8% de l'article original]
Loading...