
Installeer eerst de installer met composer global require laravel/installer en vraag Composer daarna waar het zijn uitvoerbare bestanden neerzet: composer global config bin-dir --absolute. Zet dat pad in je PATH in ~/.zshrc en draai dan source ~/.zshrc. Op macOS met bash is het bestand ~/.bash_profile, nooit ~/.bashrc.
Je typt laravel new mijn-project en de terminal antwoordt:
zsh: command not found: laravelHet probleem zit bijna nooit bij Laravel. Het uitvoerbare bestand dat Composer heeft geïnstalleerd staat in een map die je shell niet raadpleegt. Je moet dus die map vinden en aan je PATH toevoegen.
Artikel uit het traject Webontwikkeling. Procedure gecontroleerd op 2 september 2026 op macOS 26.5.1 met Composer 2.9.5 en zsh.
Eerst: staat de installer er wel?
Het commando laravel komt niet mee met Composer, je installeert het apart:
composer global require laravel/installerHeb je dat nooit gedraaid, dan tovert geen enkele PATH-instelling het commando tevoorschijn. En je kunt er prima zonder: composer create-project laravel/laravel mijn-project doet hetzelfde zonder globale installer.
De juiste map vinden, zonder gokken
De meeste tutorials laten je $HOME/.composer/vendor/bin overnemen. Vaak klopt dat, maar niet altijd: Composer kiest zijn persoonlijke map op basis van het systeem en de aanwezige omgevingsvariabelen. Vraag het hem in plaats van te gokken:
composer global config bin-dir --absolute/Users/gekkode/.composer/vendor/binDat is het resultaat op macOS 26.5.1. Op een installatie die de XDG-conventies volgt, kan het commando ~/.config/composer/vendor/bin teruggeven. Gebruik altijd wat het commando bij jou toont, niet wat een tutorial zegt.
Zolang er geen enkel globaal pakket is geïnstalleerd, klopt het pad wel maar ontbreekt de map. Dat geeft niets: een niet-bestaande map aan je PATH toevoegen levert geen fout op, en de map wordt aangemaakt bij de eerste composer global require.
De map aan je PATH toevoegen met zsh
zsh is sinds Catalina de standaardshell van macOS. Het bestand dat je aanpast is ~/.zshrc:
echo 'export PATH="$HOME/.composer/vendor/bin:$PATH"' >> ~/.zshrc
source ~/.zshrcVervang het pad door wat het vorige commando bij jou teruggaf. De source past de wijziging toe op de lopende sessie, zonder die regel werkt het pas in een nieuwe terminal.
Controleren:
which laravel
laravel --versionEn als je bash gebruikt
Op macOS Mojave en ouder, of als je bewust bij bash bent gebleven, is het bestand ~/.bash_profile:
echo 'export PATH="$HOME/.composer/vendor/bin:$PATH"' >> ~/.bash_profile
source ~/.bash_profileDat is de klassieke fout, en ze stond in de vorige versie van dit artikel. Op macOS opent de Terminal een login shell, die ~/.bash_profile leest en niet ~/.bashrc. Een regel in ~/.bashrc wordt dus nooit toegepast, waardoor het lijkt alsof de ingreep niet werkt.
Om te zien welke shell je gebruikt:
echo $SHELL
# /bin/zsh → ~/.zshrc
# /bin/bash → ~/.bash_profileAls het commando onvindbaar blijft
Drie controles, in deze volgorde. Eerst: staat de map echt in je PATH?
echo $PATH | tr ':' '\n' | grep composerVervolgens: staat het uitvoerbare bestand er?
ls "$(composer global config bin-dir --absolute)"Ontbreekt het, dan is de globale installatie mislukt. Draai die opnieuw en lees de uitvoer: een conflict met de PHP-versie is de meest voorkomende oorzaak.
Is Composer zelf onvindbaar, dan is het hetzelfde probleem een niveau lager. Op macOS installeer je het het eenvoudigst via Homebrew:
brew install composerOp een server ligt de vraag anders: zie Composer installeren op Debian.
Het alternatief dat het probleem wegneemt
Laravel Herd installeert PHP, Composer en de Laravel-installer in een beheerde omgeving, en regelt het PATH zelf. Voor een macOS-werkplek die je van nul opbouwt is dat de kortste weg: je hoeft geen enkel shell-configuratiebestand meer aan te raken.
Werk je al met een Homebrew-installatie die je goed kent, dan blijft de aanpassing van het PATH hierboven prima bruikbaar.
Veelgemaakte fouten
~/.bash_profile. Een regel in ~/.bashrc wordt nooit toegepast.composer global config bin-dir --absolute geeft het juiste pad op jouw machine.source draait op het bestand dat je hebt aangepast.

