
# Installeren

```bash
composer require storh/storh
```

## Vereisten

- PHP 8.2 of hoger
- `ext-json`
- een lokaal of gekoppeld bestandssysteem met semantiek voor atomaire hernoemingen binnen een map (elke normale lokale schijf voldoet)

storh heeft geen runtime-afhankelijkheden van Composer. Twee extensies bieden optionele functies als ze beschikbaar zijn: `ext-pdo` of `ext-mysqli` voor [SQL-mirrors](https://storh.inline0.dev/nl/docs/sql-mirror), en `ext-apcu` voor de gedeelde backend van `Cache::apcu()`, die niets in de cache opslaat als APCu niet beschikbaar is.

## Kies een opslaghoofdmap

Gebruik een map waarin uw PHP-proces mappen kan aanmaken, lezen en verwijderen, en bestanden kan schrijven en hernoemen:

```php
use Storh\StorageRoot;

$root = StorageRoot::resolve(__DIR__ . '/var/storage', 'app');
```

`StorageRoot` normaliseert alleen het opgegeven pad en maakt van de namespace een veilige mapnaam. Het inspecteert de hostapplicatie niet, leest geen globale constanten en vereist geen frameworkadapter. Engines maken hun collectiemappen aan bij het eerste gebruik.

## Controleer of alles werkt

```php
$docs = new Storh\DocStore($root, 'smoke');
$record = $docs->put(['ok' => true]);

var_dump($docs->get($record->id())?->data()); // ['ok' => true]
```

Ga verder met [Snel aan de slag](https://storh.inline0.dev/nl/docs/quick-start) of kies een engine bij [Een engine kiezen](https://storh.inline0.dev/nl/docs/engines#choosing-an-engine).
