Skip to main content
Dit artikel is gebaseerd op onderzoek van de broncode. Het is een pakket in een vroeg ontwikkelstadium dat net het v0.1-label heeft gekregen (stand: mei 2026).

Wat is Laravel Chisel?

Laravel Chisel is een pakket dat primitieven biedt voor het bouwen van post-installatiescripts waarmee je overbodige functies uit Laravel starter kits verwijdert. Starter kits bevatten veel functionaliteit out of the box, maar afhankelijk van het project heb je een deel daarvan niet nodig. Chisel lost dit op met een mechanisme waarmee je na de installatie interactief “alleen de functies behoudt die je nodig hebt”.

Waarom is dit nodig?

Laravel starter kits bundelen veel functionaliteit, maar niet elk project heeft alles nodig. Bijvoorbeeld:
  • Projecten die geen e-mailverificatie nodig hebben
  • Projecten die geen passkey-authenticatie gebruiken
  • Configuraties waarin bepaalde Livewire-componenten overbodig zijn
Voorheen moest je overbodige functies handmatig verwijderen, maar met Chisel rond je de aanpassingen af via interactieve prompts tijdens de installatie.

Het chisel.php-script definiëren

Een starter kit die Chisel gebruikt, plaatst een chisel.php-bestand in de projectroot. Dit bestand definieert welke functies optioneel zijn.

Methoden voor scriptdefinitie

Interactief antwoorden verzamelen

collectAnswers() retourneert een antwoordverzamelaar. Alle methoden zijn fluent en kunnen in willekeurige volgorde worden aangeroepen. In niet-interactieve omgevingen worden automatisch de standaardwaarden gebruikt. Een extern Artisan-commando toont de prompts met Laravel Prompts en geeft de antwoorden door aan Chisel.

Bestandsmutaties

Met file($path) richt je je op één bestand, met files(...$paths) op meerdere bestanden.

Bewerken op basis van de PHP-AST

php($path) biedt bewerkingen via de PHP-AST. De wijzigingen worden automatisch opgeslagen wanneer het object wordt vernietigd. De basis van de PHP-AST (abstract syntax tree) en het gebruik van nikic/php-parser worden hier uitgelegd.

Section markers

Je omsluit optionele code met een paar commentaren.
In JSX-bestanden gebruik je blokcommentaren met accolades ({}).
  • removeSectionMarkers('passkeys') — verwijdert de markeringen, de code blijft staan
  • removeSection('passkeys') — verwijdert zowel de markeringen als de code
De prefix chisel- wordt automatisch toegevoegd.

npm-ondersteuning

De methode npm() detecteert automatisch npm, yarn, pnpm en bun.

Huidige ontwikkelstatus

  • GitHub-repository: laravel/chisel
  • Release: v0.1 (uitgebracht in mei 2026)
  • Ontwikkelperiode: gepubliceerd na drie maanden besloten ontwikkeling
Chisel is geen pakket dat eindgebruikers rechtstreeks in hun Laravel-app installeren, maar een bibliotheek die starter kits intern gebruiken. De verwachting is dat de officiële Laravel starter kits in de toekomst post-installatiescripts op basis van Chisel gaan aanbieden.

laravel/chisel repository

De broncode en de nieuwste API-referentie vind je hier.

Officiële documentatie van Laravel starter kits

Raadpleeg de officiële documentatie voor het gebruik van de starter kits zelf.
Laatst gewijzigd op 6 september 2026