1. Accueil
  2. Articles
3 min de lecture
0 vues

Génération de passes Apple et Google Wallet, outils de déploiement Laravel et validation optimisée

#Introduction

Cette semaine, on note plusieurs avancées intéressantes autour de Laravel et de son écosystème. Freek Van der Herten dévoile comment générer des passes mobiles pour Apple et Google Wallet directement depuis Laravel, une fonctionnalité clé pour intégrer des tickets ou abonnements digitaux dans les applis mobiles. On trouve aussi une comparaison détaillée entre Scotty, le nouvel outil de déploiement signé Spatie, et Laravel Envoy, avec un focus sur l’amélioration des workflows SSH. Enfin, il est question de validation avancée en Laravel pour éviter les pièges classiques de performance lors de la gestion des entrées en tableaux imbriqués.

#Releases et mises à jour

#Génération de passes Apple et Google Wallet depuis Laravel

Freek Van der Herten présente une méthode pour créer des passes numériques fonctionnant sur les applications Wallet d’Apple et Google. Ces passes peuvent être des billets d’avion, tickets de concert, cartes de fidélité, etc. L’intérêt est de pouvoir distribuer et mettre à jour ces passes en temps réel via Laravel, automatisant ainsi la gestion côté serveur et offrant une meilleure expérience utilisateur mobile.

Un extrait simple d’utilisation pourrait ressembler à :

1$pass = WalletPass::create($data);
2return $pass->download();
1$pass = WalletPass::create($data);
2return $pass->download();

Cela facilite la gestion d’abonnements numériques directement intégrés dans les écosystèmes mobiles les plus utilisés.

En savoir plus →

#Scotty vs Laravel Envoy : le nouvel outil déploiement signé Spatie

Hafiz compare l’outil Scotty récemment développé par Spatie avec Laravel Envoy. Scotty mise sur un format bash simple, une meilleure sortie terminale, et un flux de déploiement permettant un zéro-downtime sans complexité. Scotty s’adresse particulièrement aux développeurs qui préfèrent manipuler directement SSH sans surcouche complexe, rendant les déploiements plus transparents et faciles à maintenir.

Exemple d’un script Scotty :

1scotty deploy --server production
1scotty deploy --server production

Ce nouvel outil pourrait devenir un standard pour ceux qui veulent un déploiement Laravel rapide et propre.

En savoir plus →

#Nouveaux packages et outils

#Validation performante des entrées tableau dans Laravel

Dans cet article, Freek explique comment valider efficacement des entrées de formulaire sous forme de tableaux imbriqués en évitant le problème classique de performance connu sous le nom de N+1. La solution consiste à précharger les données nécessaires dans la méthode prepareForValidation d’une FormRequest, puis à effectuer la validation en mémoire, ce qui évite les requêtes répétées et améliore significativement les performances.

Exemple :

1protected function prepareForValidation()
2{
3 $this->lookupData = Model::whereIn('id', $this->input('items.*.id'))->get();
4}
5 
6public function rules()
7{
8 return [
9 'items.*.id' => ['required', Rule::in($this->lookupData->pluck('id'))],
10 ];
11}
1protected function prepareForValidation()
2{
3 $this->lookupData = Model::whereIn('id', $this->input('items.*.id'))->get();
4}
5 
6public function rules()
7{
8 return [
9 'items.*.id' => ['required', Rule::in($this->lookupData->pluck('id'))],
10 ];
11}

Cette méthode est précieuse pour les projets Laravel avec des formulaires complexes et de gros volumes de données à valider.

En savoir plus →

#Tutoriels et articles notables

#En faveur de l’option --dry-run

Henrik Warne défend l’idée d’intégrer un mode --dry-run à des commandes qui modifient l’état d’une application. Ce mode permet d’exécuter une simulation rapide sans effets secondaires, utile pour tester des configurations et vérifier des comportements avant déploiement.

En savoir plus →

#Intelligence artificielle comme outil de développement

Freek partage sa réflexion sur l’IA et le futur des développeurs, insistant sur le fait que l’IA doit rester un outil d’appoint. L’article encourage à bien maîtriser les usages pour s’en servir efficacement sans perdre le contrôle des décisions stratégiques.

En savoir plus →