BlogWork With Me →

Field Types

All 44 field types available in FieldCraft.

Each question in a schema has a type that determines which component renders and what config options are available.

Text Fields

TypeComponentDescription
short_textShortTextFieldSingle-line text input
long_textLongTextFieldMulti-line textarea
emailEmailFieldEmail with built-in validation
phonePhoneFieldPhone number input
phone_internationalPhoneInternationalFieldInternational phone with country code
urlUrlFieldURL input with validation
legal_nameLegalNameFieldFirst / middle / last name

Numeric Fields

TypeComponentDescription
numberNumberFieldNumeric input with min/max
sliderSliderFieldRange slider
ratingRatingFieldStar rating (1–N)
npsNpsFieldNet Promoter Score (0–10)
likertLikertFieldLikert scale (Strongly Disagree → Strongly Agree)
opinion_scaleOpinionScaleFieldNumbered scale (1–N)

Selection Fields

TypeComponentDescription
single_selectSingleSelectFieldRadio buttons / card select
multi_selectMultiSelectFieldCheckboxes / multi-card
dropdownDropdownFieldDropdown / combobox
booleanBooleanFieldYes/No toggle
country_selectCountrySelectFieldCountry picker with flags
rankingRankingFieldDrag-to-rank list

Date & Time Fields

TypeComponentDescription
dateDateFieldDate picker
date_rangeDateRangeFieldStart + end date picker
timeTimeFieldTime input
appointmentAppointmentFieldDate + time slot picker

Media Fields

TypeComponentDescription
file_uploadFileUploadFieldFile upload with drag & drop
signatureSignatureFieldSignature pad (draw to sign)
image_captureImageCaptureFieldCamera capture / image upload

Advanced Fields

TypeComponentDescription
addressAddressFieldStructured address (street, city, state, zip)
paymentPaymentFieldPayment card input
matrixMatrixFieldGrid of radio/checkbox questions
repeaterRepeaterFieldDynamic add/remove field groups
calculatedCalculatedFieldAuto-computed value from expression
hiddenHiddenFieldHidden field with default value
scoringScoringFieldComputed score with color ranges

Structural Fields

TypeComponentDescription
consentConsentFieldCheckbox with consent text
info_blockInfoBlockFieldRead-only content block (no input)
section_headerSectionHeaderFieldSection divider with title and description
page_breakPageBreakFieldVisual page break separator

Content & Visual Fields

TypeComponentDescription
welcome-screenWelcomeScreenFieldWelcome/intro screen before form starts
thank-you-screenThankYouScreenFieldCompletion screen after submission
rich-textRichTextFieldRich HTML content block (read-only)
imageImageFieldDisplay image with optional caption
videoVideoFieldEmbedded video (YouTube, Vimeo, or native)
dividerDividerFieldHorizontal divider/separator
spacerSpacerFieldVertical spacing between fields

Type-Specific Config

Each field type accepts an optional config object with type-specific settings:

// Rating with 10 stars
{
id: "satisfaction",
type: "rating",
label: "Overall Satisfaction",
config: { maxStars: 10 },
}

// Slider with range and step
{
id: "budget",
type: "slider",
label: "Monthly Budget",
config: { min: 0, max: 10000, step: 100 },
}

// Matrix with rows and columns
{
id: "feedback_matrix",
type: "matrix",
label: "Rate each area",
config: {
rows: ["Speed", "Quality", "Support"],
columns: ["Poor", "Fair", "Good", "Excellent"],
inputType: "radio",
},
}