Aller au contenu principal

Laravel Filament

Découvrez Laravel Filament, une collection de superbes composants full-stack pour construire des interfaces d'administration avec la stack TALL. Une alternative gratuite à Laravel Nova.

· 4 minutes de lecture
Voir la source
Christophe
Amoureux de Markdown, WSL et Docker ~ Curieux insatiable.
Cet article existe aussi en anglais — lire la version originale.

Traduction automatique

Cette traduction a été produite par une IA. Elle peut contenir des contresens ou des maladresses, en particulier sur les termes techniques. En cas de doute, consultez l'article de référence en anglais — c'est lui qui fait foi.

Journal des modifications

Dernière
Expanded the article with a section on why Filament is worth adopting in a real project (rapid CRUD scaffolding, no separate frontend/API to maintain, Laravel-native authorization, plugin ecosystem) and a proper conclusion.

Laravel Filament

⚡
TL;DR

Cet article présente Laravel Filament, un ensemble gratuit de composants full-stack basés sur la stack TALL (Tailwind, Alpine, Laravel, Livewire) pour construire rapidement des interfaces d'administration — une alternative gratuite au Laravel Nova payant — et explique pourquoi il vaut le coup dans un vrai projet : des écrans CRUD générés depuis une seule classe PHP, pas d'API ni de frontend séparé à maintenir, et une autorisation qui réutilise vos policies Laravel existantes.

Filament est une collection de superbes composants full-stack. Le point de départ parfait pour votre prochaine application. C'est un ensemble de composants gratuits qui promet de nous permettre de construire rapidement de belles interfaces d'administration.

Le concurrent de Filament est l'officiel Laravel Nova, un logiciel payant.

Filament est construit avec les technologies les plus récentes : la stack TALL. Cet acronyme résume les technologies utilisées : Tailwind, Alpine, Laravel et Livewire.

Il existe aussi une démo en ligne pour voir rapidement les bénéfices de Filament si vous devez développer une interface de gestion avec Laravel.

http://localhost/

Filament Demo

Pourquoi s'embêter avec Filament dans un vrai projet​

Tout projet Laravel finit par avoir besoin d'un petit back-office : un écran pour gérer les utilisateurs, éditer des produits, contrôler des commandes, modérer du contenu. Construire ça à la main — routes, contrôleurs, vues Blade, validation de formulaires, pagination, recherche — c'est le même boilerplate à chaque fois. C'est exactement le problème que Filament résout :

  • Du CRUD depuis une seule classe. Une « Resource » Filament est une seule classe PHP qui décrit les champs de formulaire et les colonnes de tableau d'un modèle Eloquent ; les écrans de liste, création, édition et suppression en sont générés — pas de vues Blade écrites à la main dans le cas courant.
  • Pas de frontend ni d'API séparés à maintenir. Comme il repose sur Livewire, le panneau d'administration est du PHP rendu côté serveur qui réagit comme une SPA. Pas d'application React/Vue, pas de couche REST ou GraphQL à exposer et à sécuriser juste pour qu'un panneau interne puisse accéder à vos données.
  • L'autorisation que vous avez déjà écrite. Filament lit les policies de Laravel pour décider qui peut voir, créer, modifier ou supprimer une ressource — pas de système de permissions parallèle à garder synchronisé avec le reste de l'application.
  • Des relations, pas juste des champs. Les relations belongs-to, has-many et many-to-many disposent de widgets dédiés (select, repeater, tables pivot) d'office, et c'est en général la partie la plus longue à écrire à la main.
  • Un écosystème de plugins pour le reste. Import/export, impersonation, permissions spatie, logs d'activité, multi-tenancy — la plupart de ce dont un back-office a besoin au-delà du CRUD basique existe déjà sous forme de plugin communautaire, donc vous partez rarement d'une page blanche.
  • Gratuit, contrairement à Laravel Nova, et activement maintenu — ce qui compte pour quelque chose que vous garderez probablement des années.

En bref : si l'alternative consiste à passer un sprint à construire un panneau d'administration interne de zéro, Filament vous y amène généralement en une après-midi, et vous rend ce temps pour les parties du projet qui font vraiment la différence.

Pour en savoir plus : https://filamentphp.com/ et https://github.com/filamentphp/filament

Conclusion​

Filament ne remplacera pas une interface client soigneusement conçue, mais pour l'outillage interne dont toute application Laravel finit par avoir besoin, il supprime l'essentiel du travail répétitif : pas de CRUD écrit à la main, pas d'API séparée juste pour alimenter un panneau d'administration, et une autorisation qui réutilise les policies que vous avez déjà. Avec la démo en ligne, ça vaut le coup d'essayer la prochaine fois qu'un projet a besoin « juste d'un petit back-office rapide » — qui reste en général bien au-delà du « rapide ».

Deux autres articles Laravel sur ce blog : Travailler avec les events Laravel et Laravel Telescope, inestimable pour voir ce qu'un panneau d'administration généré fait vraiment à votre base de données.


Cet article vous a-t-il été utile ?
Avez-vous suivi les étapes de cet article ?