To me key features of a form would be ones that enable the user to complete a workflow in a self guided way. I want to be able to say “Hey new client/user/worker please complete this Onboarding Form” and they should be able to complete it without additional instructions from me.
The bare minimum features would have to be:
- What is the form for (title, rich text description),
- What is each field for (title, rich text description),
- Input validation (required field, must match this Regex)
Advanced features that would make Fibery native Forms powerful:
Value must be unique requirement - checking if any other records in the DB have the same value for that form field
Conditional logic - being able to make certain fields show/hide or required/optional based on the input provided in a prior field allowing to automatically hide/skip irrelevant questions. This is how Typeform does it:
Prefill a form using URL parameters - meaning if I have a form for creating new Contact records with the URL https://the.fibery.io/Contacts/The-Form
you can prefill the Name and Email fields in the form using the URL like this https://the.fibery.io/Contacts/The-Form?name=John+Smith&email=jsmith@gmail.com
This is enormously useful when paired with hidden fields for things like:
- referral tracking - generating form links with a hidden prefilled ID field
- if its shared publicly, being able to note where or with who it was shared
- providing additional conditionality for triggered automations