> ## Documentation Index
> Fetch the complete documentation index at: https://kawax.biz/llms.txt
> Use this file to discover all available pages before exploring further.

# PHP, Composer en Node.js installeren met Homebrew (macOS)

> Een stapsgewijze gids voor het installeren van PHP, Composer en Node.js met Homebrew op macOS, zodat je een Laravel-ontwikkelomgeving opzet.

## Inleiding

Het Laravel-team biedt beginners [Herd](https://herd.laravel.com/) en `php.new` aan, maar senior engineers beheren hun tools liever afzonderlijk via een package manager. Zo houd je zelf controle over de versies en kun je eenvoudig schakelen tussen verschillende PHP-versies voor meerdere projecten.

In deze gids leggen we uit hoe je met **Homebrew** PHP, Composer en Node.js (via nvm) installeert, tot en met het punt waarop `laravel new` werkt.

<Info>
  Doelomgeving: macOS 13 Ventura of nieuwer. Werkt op zowel Apple Silicon (M1/M2/M3) als Intel.
</Info>

***

## Homebrew installeren

Homebrew is een package manager voor macOS. Als je die nog niet hebt geïnstalleerd, voer je het volgende uit in de terminal.

```bash theme={null}
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
```

Na de installatie wordt op Apple Silicon automatisch de volgende regel toegevoegd aan je shell-configuratiebestand (zoals `~/.zprofile`). Heb je die handmatig toegevoegd, herlaad dan je configuratie.

```bash theme={null}
eval "$(/opt/homebrew/bin/brew shellenv)"
```

Controleer de installatie.

```bash theme={null}
brew --version
```

***

## PHP installeren

<Steps>
  <Step title="De nieuwste PHP installeren">
    De `php`-formule van Homebrew verwijst altijd naar de nieuwste stabiele versie. Laravel 13 vereist PHP 8.3 of hoger.

    ```bash theme={null}
    brew install php
    ```
  </Step>

  <Step title="Versie controleren">
    ```bash theme={null}
    php --version
    ```

    Als er `PHP 8.3.x` of hoger wordt getoond, is het gelukt.
  </Step>

  <Step title="(Optioneel) Een specifieke versie gebruiken">
    Wil je meerdere PHP-versies beheren, installeer dan een formule met versienummer.

    ```bash theme={null}
    brew install php@8.3
    ```

    Gebruik `brew link` om van versie te wisselen.

    ```bash theme={null}
    brew unlink php
    brew link php@8.3 --force --overwrite
    ```

    Controleer welke versie momenteel gelinkt is.

    ```bash theme={null}
    php --version
    ```
  </Step>
</Steps>

***

## Composer installeren

<Steps>
  <Step title="Composer installeren">
    Je kunt Composer rechtstreeks via Homebrew installeren.

    ```bash theme={null}
    brew install composer
    ```
  </Step>

  <Step title="Versie controleren">
    ```bash theme={null}
    composer --version
    ```
  </Step>

  <Step title="Het pad voor globale installaties instellen">
    Voeg `~/.composer/vendor/bin` toe aan je `PATH`, zodat je pakketten kunt gebruiken die je met `composer global require` installeert (zoals de Laravel installer).

    Voeg het volgende toe aan `~/.zshrc` (of `~/.bashrc`).

    ```bash theme={null}
    export PATH="$HOME/.composer/vendor/bin:$PATH"
    ```

    Laad de configuratie opnieuw.

    ```bash theme={null}
    source ~/.zshrc
    ```
  </Step>
</Steps>

***

## nvm installeren

Node.js installeer je per gebruiker met nvm (Node Version Manager). Omdat je het zonder `root`-rechten kunt beheren, werkt het goed samen met AI-tools en CLI's die globale npm-pakketten gebruiken.

<Steps>
  <Step title="nvm installeren">
    Het nieuwste installatiescript vind je in de [GitHub-repository van nvm](https://github.com/nvm-sh/nvm).

    ```bash theme={null}
    curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
    ```
  </Step>

  <Step title="Toevoegen aan je shell-configuratiebestand">
    Het installatiescript voegt automatisch het volgende toe aan `~/.zshrc` (of `~/.bashrc`). Is dat niet gebeurd, voeg het dan handmatig toe.

    ```bash theme={null}
    export NVM_DIR="$HOME/.nvm"
    [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
    [ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"
    ```

    Laad de configuratie opnieuw.

    ```bash theme={null}
    source ~/.zshrc
    ```
  </Step>

  <Step title="Installatie controleren">
    ```bash theme={null}
    nvm --version
    ```
  </Step>
</Steps>

***

## Node.js installeren

<Steps>
  <Step title="De LTS-versie installeren">
    ```bash theme={null}
    nvm install --lts
    ```
  </Step>

  <Step title="Als standaard instellen">
    Stel de standaardversie in, zodat die ook automatisch wordt gebruikt in nieuwe terminalsessies.

    ```bash theme={null}
    nvm alias default node
    ```
  </Step>

  <Step title="Versie controleren">
    ```bash theme={null}
    node --version
    npm --version
    ```
  </Step>
</Steps>

***

## Laravel-installatie controleren

<Steps>
  <Step title="De Laravel installer installeren">
    ```bash theme={null}
    composer global require laravel/installer
    ```
  </Step>

  <Step title="Een nieuw project aanmaken">
    ```bash theme={null}
    laravel new my-app
    ```

    Er start een interactieve setup. Je kunt onder meer een starter kit kiezen en aangeven of je authenticatie wilt.
  </Step>

  <Step title="De ontwikkelserver starten">
    ```bash theme={null}
    cd my-app
    php artisan serve
    ```

    Open `http://localhost:8000` in je browser. Zie je de welkomstpagina van Laravel, dan ben je klaar.
  </Step>
</Steps>

***

## Wanneer kies je Homebrew of Herd?

|                         | Handmatige setup met Homebrew                                      | Herd                                                    |
| ----------------------- | ------------------------------------------------------------------ | ------------------------------------------------------- |
| **Doelgroep**           | Ontwikkelaars die versies en configuratie fijnmazig willen beheren | Beginners en solo-ontwikkelaars die snel willen starten |
| **PHP-versie wisselen** | Handmatig met `brew link`                                          | Eenvoudig wisselen via de GUI                           |
| **Lokale domeinen**     | `/etc/hosts` handmatig bewerken                                    | Automatisch een `.test`-domein ingesteld                |
| **Servicebeheer**       | `brew services`                                                    | Starten en stoppen via de GUI                           |
| **Aanpasbaarheid**      | Hoog                                                               | Beperkt                                                 |

Wil je je configuratie afstemmen op teamontwikkeling of een CI-omgeving, of wissel je regelmatig tussen meerdere PHP-versies, dan is een handmatige setup met Homebrew de betere keuze.


## Related topics

- [PHP, Composer en Node.js installeren met WSL (Windows)](/nl/blog/windows-setup.md)
- [博客](/zh-CN/blog/index.md)
- [部落格](/zh-TW/blog/index.md)
- [Laravel Pint](/nl/pint.md)
- [Laravel Multiplex — een TUI om lokale ontwikkelprocessen samen te beheren](/nl/blog/multiplex-introduction.md)
