Customizing Templates
Templates are starting points, not final solutions. This guide covers how to customize templates to match your specific requirements.
What You Can Customizeโ
Everything in a template is fully editable:
| Element | What You Can Change |
|---|---|
| Fields | Add, remove, reorder, change types |
| Labels | Update field labels and descriptions |
| Validation | Modify required status, add rules |
| Layout | Change field widths, add sections |
| Logic | Add conditional visibility rules |
| Settings | Update form name, messages, appearance |
Modifying Fieldsโ
Edit Field Propertiesโ
- Click any field in the Form Builder
- Properties panel opens on the right
- Modify properties:
- Label and placeholder text
- Help text and descriptions
- Required status
- Default values
- Validation rules
Change Field Typeโ
Sometimes a template uses a field type that doesn't quite fit:
- Select the field
- Click "Change Type" in the properties panel
- Choose a new field type
- Adjust type-specific settings
Common conversions: short_text โ email, dropdown โ radio, long_text โ short_text
Reorder Fieldsโ
Drag and drop fields to reorder them:
- Hover over a field
- Grab the drag handle (โฎโฎ)
- Drag to the new position
- Drop to place the field
Add New Fieldsโ
- Open the Field Palette (left sidebar)
- Drag a field type onto the canvas
- Drop it where you want it
- Configure the field properties
Remove Fieldsโ
- Select the field to remove
- Click the Delete button (๐๏ธ) or press
Delete - Confirm removal
Adjusting Validationโ
Required Fieldsโ
Toggle required status:
- Select the field
- Check/uncheck "Required" in properties
Validation Rulesโ
Add or modify validation:
// Example: Add length validation
{
type: 'short_text',
path: 'username',
label: 'Username',
validation: {
minLength: 3,
maxLength: 20,
pattern: '^[a-zA-Z0-9_]+$',
customMessage: 'Username must be 3-20 alphanumeric characters'
}
}
See Validation for all available rules.
Adding Conditional Logicโ
Make fields show/hide based on other field values:
- Select a field
- Open "Conditional Logic" section
- Add a rule:
- When [field] [operator] [value]
- Then show/hide/require this field
Example: Show "Other" text field when dropdown selection is "Other":
conditionalLogic: [
{
action: 'show',
targetField: 'otherReason',
logicType: 'all',
conditions: [
{ field: 'reason', operator: 'equals', value: 'other' }
]
}
]
See Conditional Logic for details.
Layout Changesโ
Field Widthsโ
Adjust how much horizontal space a field takes:
- Select the field
- Set Width:
full,half,third, orquarter
{ type: 'short_text', path: 'firstName', label: 'First Name', width: 'half' }
{ type: 'short_text', path: 'lastName', label: 'Last Name', width: 'half' }
Adding Sectionsโ
Group related fields with section headers:
- Drag a Section field from the palette
- Give it a title
- Place fields below it
Multi-Page Formsโ
Convert to a wizard-style form:
- Add Page Break fields where you want page divisions
- Configure page titles and navigation
- See Multi-Page Forms
Form Settingsโ
Basic Settingsโ
Update in the Form Settings panel:
- Form Name โ Internal identifier
- Title โ Displayed to users
- Description โ Form introduction text
- Submit Button Text โ "Submit", "Send", etc.
- Success Message โ Thank you message after submission
Appearanceโ
Customize the look:
- Theme โ Light/Dark mode
- Primary Color โ Accent color for buttons and highlights
- Border Radius โ Rounded or square corners
Best Practicesโ
Do'sโ
- Start simple โ Use the template as-is first, then customize
- Test frequently โ Preview after each significant change
- Keep structure โ Maintain logical field ordering
- Preserve validation โ Keep important validation rules unless you have a reason to remove them
Don'tsโ
- Don't over-customize โ If you're changing everything, consider starting from scratch
- Don't remove required validation โ Unless you're sure it's not needed
- Don't change field paths โ If you have existing data, changing paths will break references
Common Customization Scenariosโ
Scenario: Adding Company-Specific Fieldsโ
// Add to a contact form template
{
type: 'dropdown',
path: 'department',
label: 'Department',
required: true,
options: [
{ label: 'Sales', value: 'sales' },
{ label: 'Support', value: 'support' },
{ label: 'Engineering', value: 'engineering' },
{ label: 'Other', value: 'other' }
]
}
Scenario: Making Optional Fields Requiredโ
// Original template field
{ type: 'phone', path: 'phone', label: 'Phone Number' }
// Modified to be required
{ type: 'phone', path: 'phone', label: 'Phone Number', required: true }
Scenario: Adding Validation to Existing Fieldsโ
// Add URL validation to a text field
{
type: 'url', // Changed from short_text
path: 'website',
label: 'Company Website',
placeholder: 'https://example.com'
}
Saving Customizationsโ
Save as New Templateโ
Save your customized form as a reusable template:
- Click "Save as Template" in the Form Builder
- Give it a name and description
- Choose a category
- Your template appears in the Template Gallery
Export Configurationโ
Export the form config for backup or sharing:
- Go to Form Settings
- Click "Export"
- Choose TypeScript or JSON format
- Save the file
Related Pagesโ
- Template Gallery โ Browse templates
- Using Templates โ Apply templates
- Form Builder โ Builder interface
- Field Types โ Available field types
- Validation โ Validation rules
- Conditional Logic โ Dynamic field visibility