Download the PHP package contenir/contenir-formbuilder without Composer
On this page you can find all versions of the php package contenir/contenir-formbuilder. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download contenir/contenir-formbuilder
More information about contenir/contenir-formbuilder
Files in contenir/contenir-formbuilder
Package contenir-formbuilder
Short Description Framework-agnostic form-builder engine for Contenir CMS — runtime-editable form definitions, builder-form construction, server-side submission validation.
License MIT
Informations about the package contenir-formbuilder
contenir/contenir-formbuilder
Formerly contenir/formbuilder; the old package is abandoned in favour of this one.
Framework-agnostic form-builder engine for Contenir CMS.
It turns a runtime-editable form definition (sections, groups, rows and
fields, usually stored in a database) into a working Laminas\Form\Form,
validates submissions against it, and renders the markup:
- Definitions. Immutable value objects describing a form, its layout, notifications and webhooks.
- Field types. 17 built-in types behind a registry you can extend.
- Validators. A small curated vocabulary mapped onto Laminas validators.
- Conditional logic. Show/hide rules evaluated on the server (and mirrored by the client).
- Submission. CSRF, a honeypot spam trap, conditional gating, optional
file uploads through
contenir/contenir-storage, and observers (registrars) that persist or forward the result. - Rendering. Framework-free HTML for single-page or stepped forms.
- Merge tags.
{field:name},{form:title},{entry:fields}and custom namespaces for notification templates and redirect URLs.
This is the pure-PHP core. It has no opinion about how definitions are loaded
or how submissions are stored. contenir/contenir-formbuilder-laminas-mvc
wires it into a laminas-mvc application.
Requirements
- PHP 8.3, 8.4 or 8.5
- laminas-form 3.20+, laminas-inputfilter, laminas-validator, laminas-filter
- laminas-session (backs the CSRF token)
ext-curlfor webhooks- Optional:
contenir/contenir-storagefor thefilefield type
Installation
The 0.x releases, which support PHP 8.1, remain available from the 0.x
branch and v0.* tags; see UPGRADE-2.0.md.
Usage
The full public API is described in docs/:
| Page | Covers |
|---|---|
| Definitions | FormDefinition, sections, groups, rows, fields, validators, notifications, webhooks |
| Field types | The built-in types, FieldTypeRegistry, writing your own type |
| Validators | ValidatorFactory vocabulary and options |
| Conditional logic | RuleEvaluator, ConditionalRulesParser |
| Building and submitting | FormBuilderService, FormSubmissionService, SubmissionResult, BuilderForm, observers, uploads |
| Rendering | FormMarkup, FormContentSanitizer |
| Merge tags | TokenReplacer |
| Webhooks | WebhookRegistrar |
Development
The QA toolchain is contenir/contenir-qa-tools.
Mago is a standalone binary, installed
separately (brew install mago).
The webhook integration tests start PHP's built-in web server on a free loopback port.
License
MIT. See LICENSE.
All versions of contenir-formbuilder with dependencies
laminas/laminas-filter Version ^2.30
laminas/laminas-form Version ^3.20
laminas/laminas-inputfilter Version ^2.30
laminas/laminas-session Version ^2.16
laminas/laminas-validator Version ^2.50 || ^3.0
psr/log Version ^1.0 || ^2.0 || ^3.0