Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Puis-je utiliser un cadre CSS différent au lieu d'un vent arrière pour les thèmes de filament


Puis-je utiliser un cadre CSS différent au lieu d'un vent arrière pour les thèmes de filament


Filament est un constructeur de panneaux d'administration Laravel populaire qui est étroitement intégré à CSS à vent arrière pour le style. Tailwind CSS est un framework CSS d'abord utilitaire qui fournit des cours de services publics de bas niveau, permettant aux développeurs de construire efficacement des conceptions d'interface utilisateur personnalisées. Cependant, de nombreux développeurs demandent s'ils peuvent utiliser un cadre CSS différent au lieu du vent arrière CSS pour styliser des thèmes de filament.

La réponse simple est que le filament est principalement conçu pour fonctionner avec CSS à vent arrière, et ses composants, thèmes et interface utilisateur reposent fortement sur les cours et les conventions d'utilité de Tailwind. Ce couplage serré signifie que le changement de vent arrière pour un autre cadre CSS n'est pas officiellement pris en charge ou simple. Cependant, avec des efforts et des personnalisations, il est possible d'adapter d'autres frameworks CSS à utiliser avec Filament, mais cela implique la construction de thème personnalisée, les styles par défaut remplacés et éventuellement la reconstruction de certaines pièces d'interface utilisateur à partir de zéro.

***

La dépendance du filament

à l'égard du vent arrière CSS

Filament utilise CSS Tailwind comme cadre de style par défaut et de base. Tout son système de conception et ses composants exploitent les cours d'utilité de Tailwind pour la mise en page, l'espacement, les couleurs, la typographie, la réactivité, l'interactivité et le thème. L'interface utilisateur d'administration par défaut est construite avec le vent arrière, et de nombreux plugins et extensions de filament assument également le vent arrière comme fondation CSS.

Étant donné que Tailwind CSS utilise une approche de l'utilité axée sur les services publics, les thèmes de filament impliquent l'ajout et la personnalisation des utilitaires de vent arrière plutôt que d'écrire CSS traditionnel ou de s'appuyer sur des classes définies à l'échelle mondiale. Il en résulte une interface utilisateur hautement flexible et personnalisable, mais signifie également que les composants de filament s'attendent à ce que les utilitaires de vent arrière soient présents à rendre correctement.

***

Utilisation d'autres cadres CSS avec filament: défis et approches

Essayer de remplacer CSS à vent arrière par un autre cadre CSS comme Bootstrap, Bulma, Foundation ou Materialise Face plusieurs défis:

- Noms et utilitaires de classe: d'autres cadres ont des noms de classe et des méthodologies CSS différents (par exemple, Bootstrap utilise des noms de classe sémantique comme `.BTN`,` .Container`, tandis que Tailwind utilise des classes d'utilité comme `BG-Blue-500`,` P-4`). Les composants de filament utilisent largement les noms de classe de Tailwind, donc échanger le CSS nécessite de réécrire des classes de composants ou de créer des styles analogues dans le nouveau cadre.

- Réactivité et systèmes de réseau: Tailwind utilise ses propres utilitaires de conception réactifs basés sur un système de grille axé sur mobile. D'autres cadres ont des définitions de grille et de point d'arrêt différentes qui pourraient ne pas mapper proprement à l'approche de Tailwind.

- Composants et interactions personnalisés: de nombreux composants d'interface utilisateur filaments intègrent des transitions, des animations et des états basés sur le vent arrière. Ceux-ci pourraient devoir être reproduits à l'aide de capacités JavaScript ou d'autres cadres CSS.

- Processus de construction: le processus de construction de Filament comprend généralement la configuration du compilateur Just-in-Time (JIT) de Tailwind pour générer uniquement les classes CSS nécessaires. L'utilisation d'un autre cadre signifie ajuster ou remplacer le pipeline de construction CSS.

Malgré ces obstacles, les utilisateurs avancés qui souhaitent utiliser un cadre différent peuvent considérer:

- Construire un thème de filament personnalisé: Vous pouvez remplacer les vues par défaut du filament et les composants de lame pour utiliser les classes CSS de votre choix, en appliquant les classes de votre cadre CSS au lieu de Tailwind. Cela nécessite une connaissance approfondie des deux internes de filament et de votre cadre CSS choisi.

- Utilisation d'extensions compatibles avec le vent arrière: Certains cadres CSS ou bibliothèques d'interface utilisateur se construisent en haut ou sont compatibles avec le vent arrière (par exemple, Daisyui), qui peuvent ajouter des composants prédéfinis et un thème plus facile au-dessus du vent arrière CSS sans le remplacer complètement.

- Remplacement du vent arrière CSS par un CSS vanille ou un cadre utilitaire personnalisé: Au lieu d'un cadre CSS complet, certains développeurs créent une bibliothèque utilitaire CSS minimale inspirée de l'approche de Tailwind. Cela peut fonctionner mais signifie construire vous-même de nombreux styles.

***

Alternatives au vent arrière CSS pour le filament de style

Si vous souhaitez utiliser un cadre CSS différent pour Filament, voici un bref aperçu de certaines alternatives populaires et comment ils se comparent pour ce cas d'utilisation:

- Bootstrap: le cadre CSS le plus utilisé, offrant un style basé sur des composants avec des classes prédéfinies pour les boutons, les formulaires, les grilles, etc. Bootstrap est plus lourd que le vent arrière et non l'utilité. L'intégration de Bootstrap à Filament nécessiterait de réécrire toutes les classes de vent arrière dans des modèles de filament avec des classes bootstrap et éventuellement de réécrire des comportements interactifs avec JavaScript de Bootstrap.

- Bulma: un cadre CSS moderne et léger basé sur Flexbox. Il est modulaire et utilise des noms de classe sémantiques plutôt que des classes utilitaires d'abord. Semblable à Bootstrap, l'utilisation de Bulma avec Filament nécessite un remplacement de thème personnalisé et le remappage des utilitaires de vent arrière aux équivalents Bulma.

- Fondation: un autre cadre CSS complet à l'appui de la grille et des dispositions réactives. Sa courbe d'apprentissage et sa complexité d'intégration sont similaires à Bootstrap et Bulma.

- Frameworks de matérialisation ou de matériel: CSS basé sur la conception de matériaux de Google. Ils offrent des composants d'interface utilisateur prédéfinis de manière cohérente avec des principes de conception de matériaux. Les utiliser au lieu du vent arrière signifie reconstruire l'interface utilisateur du filament pour faire correspondre les directives matérielles et l'adaptation des composants avec des classes et des scripts spécifiques au matériau.

- Daisyui: pas un remplacement mais un plugin de CSS de vent arrière qui fournit des classes de composants pour simplifier le style. Il peut réduire votre charge de travail CSS tout en gardant le vent arrière comme cadre principal, bénéfique pour les utilisateurs de filament qui veulent un style plus rapide sans abandonner le vent arrière.

***

Étapes techniques pour utiliser un cadre CSS différent avec filament

Si vous choisissez de procéder avec un autre cadre CSS, voici les étapes techniques générales:

1. Désactiver ou retirer le vent arrière CSS du pipeline d'actifs du filament pour éviter les affrontements.

2. Ajoutez le cadre CSS de choix à votre projet Laravel via l'inclusion de fichiers NPM, CDN ou direct.

3. Remplacer les vues et composants de filament: publier les vues de filament à l'aide de `PHP Artisan Vendor: Publish`, puis modifiez les modèles de lame pour remplacer les classes de vent arrière par les classes de votre framework.

4. Reconstruire les composants personnalisés: si Filament repose sur des classes de vent arrière pour les composants interactifs, réécrivez ces pièces interactives à l'aide de JavaScript ou des utilitaires JavaScript de votre cadre CSS.

5. Ajustez la configuration: Mettez à jour les fichiers de configuration du filament si nécessaire pour accueillir les chemins d'actifs CSS et JS.

6. Test UI en détail: la conception réactive, l'accessibilité et la compatibilité du navigateur doivent être validées car le modèle de conception du nouveau cadre peut différer.

***

Avantages et inconvénients de l'utilisation d'autres cadres avec filament

Avantages:

- Vous pouvez tirer parti des connaissances et des systèmes de conception existants familiers avec votre équipe.
- Réutiliser les cadres CSS utilisés dans d'autres parties de votre application pour la cohérence.
- éventuellement utiliser des frameworks avec plus de composants d'interface utilisateur prêts à l'emploi si préféré.

Inconvénients:

- nécessite un effort important, car le filament est fait par défaut pour le vent arrière.
- Perd les avantages d'intégration serrés, tels que la génération JIT CSS, la facilité de théâtre et la flexibilité de l'utilité.
- entraîne potentiellement des CSS plus lourds et des temps de chargement plus longs.
- Peut compliquer la mise à jour et la maintenance du filament et de ses thèmes.

***

Résumé

Le système de thème et les composants de l'interface utilisateur de Filament sont profondément intégrés au vent arrière CSS, faisant du vent arrière du cadre CSS par défaut et recommandé pour les thèmes de filament. Bien qu'il soit techniquement possible d'utiliser d'autres cadres CSS comme Bootstrap, Bulma, Foundation ou Materialise en créant des thèmes personnalisés et des vues primordiales, cela nécessite un travail de personnalisation substantiel et une bonne compréhension du filament et du cadre alternatif.

Pour de nombreux développeurs, au lieu de remplacer entièrement le vent arrière, l'utilisation d'extensions ou de plugins comme Daisyui qui s'appuie sur le vent de queue CSS offre un thème simple avec des composants préfilés sans perdre les avantages du vent arrière.

En conclusion, bien que vous puissiez utiliser un cadre CSS différent avec Filament par personnalisation étendue, le CSS à vent arrière reste le choix principal et le plus simple pour le développement du thème Filament en raison de son intégration profonde, de sa flexibilité alimentaire et de son optimisation des performances adaptée au système de conception de Filament. Si l'utilisation d'un autre cadre est essentielle, préparez-vous à des efforts de développement personnalisés importants pour adapter les composants et les styles d'interface utilisateur de Filament aux paradigmes de ce cadre.

Cette approche garantit la cohérence de l'interface utilisateur, la maintenabilité et un meilleur effet de levier des fonctionnalités du filament dans les projets de panel d'administration Laravel.