Skip to content

Collections & Fields ​

Open a collection's Fields tab and click Add Field to add a column. Every field has a Key (its internal name, can't be changed later), a Label (what people see), and a Type, plus type-specific options.

Field types ​

TypeUse forNotable options
Text / Long TextShort or multi-line textmin/max length, placeholder, optional QR/barcode scan button
NumberPlain numbersmin, max, step, prefix/suffix, decimal places
PriceCurrency-formatted numberscurrency code, decimal places
BooleanA true/false toggle—
Date / Date & Time / TimeDate and time values—
EnumA dropdown of fixed, labeled, colour-coded options — pick oneadd/remove options
Multi-EnumThe same fixed options, but pick several ("tick all that apply")add/remove options
ReferenceA link to one record in another collectiontarget collection, which field to display, search field, an optional barcode-scan search, "distinct" (each record can be picked only once)
Multi-ReferenceLinks to several records in another collectionsame options as Reference (including "distinct")
Image / FileUploaded mediaaccepted file types, max size, allow multiple
GeolocationA GPS coordinate, captured from the device—
AddressA postal address—
Phone NumberA phone number, with a searchable country-code pickerdefault country code
List (virtual)A live, computed list of related recordssource collection, display field, sort
Complete ListAn embedded mini-table of related records, rows are clickablesource collection, which columns to show, sort
Drawing / SignatureA signature or sketch pad, stored as an imagestroke colour/width, background colour, max size
Barcode / QRDisplays a barcode or QR code rendered from the field's valueformat (QR, CODE128, EAN-13, UPC), render size
TableAn embedded mini-table for structured sub-data you type in yourselfcolumns (key + header)

For the exact JSON behind every type and its options, see the Schema Reference.

Computed fields ​

Turn on Computed and a field's value is calculated from a formula instead of typed in — it recalculates every time it's shown, and whatever's typed into the underlying field (if anything) is ignored. A computed field can:

  • Reference other fields on the same record — MULTIPLY({quantity}, {unit_price})
  • Follow a reference field — {product.name}
  • Look at other records live — COUNT(COLLECTIONSELECT("orders", 'EQUAL({customer},{_THISRECORD.id})'))

See Expressions for the full formula reference.

Initial value ​

A field can have an initial value — a formula that runs once when the create form opens, to pre-fill it. Common examples: NOW() for a created-at timestamp, 0 for a starting quantity, or UNIQUECHAR("alphanumeric", 6) for a short random reference code.

Description ​

A field's optional description is help text. In a questionnaire view, the description is shown as the question itself (falling back to the label when there's none), so write the full question there and keep the label short.

Show and validate ​

Two more optional, formula-driven behaviours live on every field:

  • Show field only if — hides the field (and clears its value, unless it's computed) when the formula is false. Good for "only show this if the record is in a certain state."
  • Valid if — marks the field invalid on submit if the formula is false, with an optional custom error message.

Flags ​

  • Required — can't be left blank.
  • Read only — shown, but can't be edited on the form.
  • Is label field — one per collection. Its value is used whenever the record needs a short, recognizable name — in a reference picker's dropdown, for instance. Usually a name or title field.

Released under no license yet — internal product, pre-launch.