Configuration
Complete reference for Polyform configuration options
Everything in Polyform is configured through config/polyform.php. This page covers every available option.
php artisan polyform:init. To republish manually: php artisan vendor:publish --tag=polyform-config. Table Prefix
Change the database table prefix if the default conflicts with your existing tables:
Model Classes
All models are referenced through config, so you can swap in your own subclasses whenever you need custom behavior:
File Storage
Controls where uploaded files go and what's allowed:
Polyform\Contracts\FileStorageHandler. Submission Tracking
Choose what metadata gets stored with each submission:
track_ip and track_user_agent to false for GDPR/CCPA compliance, or use prune_after_days to set up data retention. Caching
Polyform caches form structures and submission counts to keep things fast:
Rich Text Editor
Settings for the rich text field (built on Tiptap):
Rating Field Defaults
Defaults applied to rating fields:
Scale Field Defaults
Defaults for scale fields (e.g., a 1-10 slider):
Multi-Step Forms
Controls how multi-step forms behave:
Autosave
Automatic draft saving settings:
Webhooks
Webhook dispatching and security settings:
.env as POLYFORM_WEBHOOK_SECRET. Data Exports
Settings for exporting submission data:
Option Sources
Register where select, radio and checkbox fields pull their options from:
Enum Sources
Map PHP enums to option sources:
Model Sources
Load options from Eloquent models:
Custom Resolvers
Register custom option resolvers that implement DynamicOptionResolver:
Environment Variables
A few config values can be set directly via your .env file: