Skip navigation

Configuration

Configuration Options

Encryption

Option Default Accepts Description
tobimori.dreamform.secret null `string callable`

HTMX and API modes require either tobimori.dreamform.secret or an explicitly configured Kirby content.salt. DreamForm does not use Kirby's insecure default content salt.

Optional Settings

Option Default Accepts Description
tobimori.dreamform.mode 'prg' `'prg' 'api'
tobimori.dreamform.multiStep true boolean Enable or disable multi-step forms
tobimori.dreamform.storeSubmissions true boolean Whether to store submissions as pages in Kirby
tobimori.dreamform.debug fn () => option('debug') `boolean callable`
tobimori.dreamform.layouts ['1/1', '1/2, 1/2'] array Enabled layouts for the form builder
tobimori.dreamform.page page://forms string The page where all forms are stored
tobimori.dreamform.integrations.gravatar true boolean If enabled, submissions with email fields fetch an avatar from Gravatar to show in the panel
tobimori.dreamform.refererPageResolver callable callable Custom callback to resolve pages with custom URLs

Example Configuration

// site/config/config.php

return [
  'content' => [
    'salt' => fn () => env('CONTENT_SALT')
  ],
  'tobimori.dreamform' => [
    'mode' => 'htmx',
    'debug' => false,
    'layouts' => ['1/1', '1/2, 1/2', '1/3, 1/3, 1/3'],
    'guards' => [
      'available' => ['csrf', 'honeypot', 'turnstile']
    ]
  ]
];