Skip to main content

Cos’è Laravel Pint

Laravel Pint è uno strumento di formattazione automatica del codice costruito su PHP CS Fixer. È progettato per essere usato senza configurazione e formatta il codice secondo lo stile di codifica di Laravel. Automatizzando i “commenti di code review sullo stile” comuni nello sviluppo in team, puoi concentrarti sulle revisioni davvero importanti.

Installazione

Nelle nuove applicazioni Laravel Pint è già installato. Nei progetti più vecchi installalo con Composer.

Esecuzione

Uso di base

Corregge automaticamente tutti i file .php del progetto.
Puoi anche limitarlo a file o directory specifiche.

Elenco delle opzioni

Configurazione

Puoi personalizzare il comportamento creando pint.json nella root del progetto.
Puoi anche indicare esplicitamente il path del file di configurazione.

Preset

Un preset è un insieme di regole. Il preset predefinito è laravel con le regole più adatte a progetti Laravel.

Personalizzazione delle regole

Puoi attivare/disattivare singole regole in pint.json. Le regole disponibili sono elencate in PHP CS Fixer Configurator.

Esclusione di file/cartelle

Puoi escludere cartelle specifiche dal controllo.
Per escludere in base al nome file usa notName.
Per escludere in base al path del file usa notPath.

Configurazione consigliata

Esempio di pint.json efficace nella pratica di sviluppo.
Motivo delle regole:
strict_comparison e declare_strict_types impongono codice rigoroso sui tipi. Se le aggiungi a un progetto esistente il primo intervento può essere corposo. Nei nuovi progetti conviene introdurle fin da subito.
no_unused_imports è pensato per lo sviluppo di pacchetti. Il default di Pint è true (rimuovere gli use inutilizzati); nei normali progetti Laravel la voce è superflua. Nello sviluppo di pacchetti ci sono pattern con trait/interfacce importate per attivare/disattivare funzionalità, quindi metterlo a false e cambiarlo a true in base al pacchetto è comodo.

Script in composer.json

Registrando gli script in composer.json puoi eseguire composer pint direttamente.
Dopo la registrazione:
Nei CI usa composer pint:test per rilevare violazioni senza modificare i file. Con l’opzione --test esce con codice diverso da zero in caso di errore, utile per il gate del CI.

Esecuzione automatica con GitHub Actions

Puoi usare GitHub Actions per correggere e committare automaticamente lo stile a ogni push.
1

Configura i permessi del workflow

Nelle Settings > Actions > General > Workflow permissions della repository GitHub attiva “Read and write permissions”.
2

Crea il file di workflow

Crea .github/workflows/lint.yml.
Questo workflow esegue Pint a ogni push e committa automaticamente i file corretti.
Poiché le correzioni avvengono prima della review, si riducono i commenti di review sullo stile. Quando lo introduci in team, esegui prima una passata locale su tutti i file per evitare commit di rumore.
Ultima modifica il 13 luglio 2026