useBlade

Une collection de directives Blade élégantes et utiles pour Laravel — copiables en un clic, installables proprement.

FormatageDatesTexteAuth & RôlesInterfaceDebug

Mise en place · 2 minutes

Installer proprement

Pas de bazar dans votre AppServiceProvider. On regroupe les directives dans une classe dédiée, appelée depuis un provider séparé.

1

Créez une classe dédiée aux directives

app/Support/BladeDirectives.php
2

Générez un provider séparé

terminal
3

Appelez la classe depuis le provider

BladeServiceProvider.php
4

Enregistrez le provider

bootstrap/providers.php
config/app.php

✅ C'est tout. Chaque directive ci-dessous se colle simplement dans BladeDirectives::register(). Cliquez sur n'importe quel bloc de code pour le copier.

La collection

Les directives

Formatage

@money

Formatage

Formate un nombre en montant lisible (séparateur de milliers, 2 décimales).

@money($amount, $currency = '€')

dans votre vue blade

@filesize

Formatage

Convertit un nombre d'octets en taille lisible (Ko, Mo, Go…).

@filesize($bytes)

dans votre vue blade

@percent

Formatage

Affiche une valeur sous forme de pourcentage formaté.

@percent($value, $decimals = 0)

dans votre vue blade

Dates

@datetime

Dates

Formate n'importe quelle date Carbon/string avec un format au choix.

@datetime($date, $format = 'd/m/Y H:i')

dans votre vue blade

@ago

Dates

Affiche le temps écoulé de façon humaine (« il y a 3 heures »).

@ago($date)

dans votre vue blade

@greeting

Dates

Renvoie un message d'accueil dynamique selon l'heure de la journée.

@greeting

dans votre vue blade

Texte

@initials

Texte

Extrait les initiales d'un nom complet — parfait pour les avatars.

@initials($name)

dans votre vue blade

@truncate

Texte

Coupe proprement un texte trop long et ajoute des points de suspension.

@truncate($text, $limit = 100)

dans votre vue blade

@readtime

Texte

Estime le temps de lecture d'un contenu (≈ 200 mots / minute).

@readtime($content)

dans votre vue blade

@pluralize

Texte

Accorde un mot avec son nombre et affiche le compteur d'un coup.

@pluralize($count, $singular, $plural)

dans votre vue blade

Auth & Rôles

@role / @endrole

Auth & Rôles

Affiche un bloc seulement si l'utilisateur connecté possède le rôle donné.

@role('admin') … @endrole

dans votre vue blade

@guestonly

Auth & Rôles

Bloc réservé aux visiteurs non connectés (boutons de connexion, etc.).

@guestonly … @endguestonly

dans votre vue blade

@canany

Auth & Rôles

Vérifie si l'utilisateur a au moins une des permissions listées.

@canany(['edit', 'delete'], $post) … @endcanany

dans votre vue blade

Interface

@active

Interface

Renvoie une classe CSS quand la route courante correspond — idéal pour la navigation.

@active('route.name', 'class')

dans votre vue blade

@gravatar

Interface

Génère l'URL de l'avatar Gravatar à partir d'une adresse e-mail.

@gravatar($email, $size = 80)

dans votre vue blade

@icon

Interface

Inline une icône SVG depuis resources/icons avec des classes au choix.

@icon('heart', 'w-5 h-5')

dans votre vue blade

@repeat / @endrepeat

Interface

Boucle N fois sans variable temporaire — pratique pour des étoiles, skeletons…

@repeat($n) … @endrepeat

dans votre vue blade

Debug

@dump

Debug

Affiche une variable joliment formatée directement dans la vue (debug).

@dump($var)

dans votre vue blade

@envbadge

Debug

Affiche un petit badge avec l'environnement courant, sauf en production.

@envbadge

dans votre vue blade