Skip to content

View Objects

Views define how table data is visualized and organized. Each view has a unique identifier and a specific type that determines its layout.

TypeDescription
gridStandard spreadsheet-like table view.
kanbanBoard view for tracking items through stages.
galleryCard-based visual gallery view.

All view types share these core properties in the IView object:

PropertyTypeDescription
idstringUnique identifier (UUIDv7 without dashes).
namestringDisplay name of the view.
typestringView type identifier.
querystringThe SQL query defining the data subset for this view.
fieldIdsstring[]Ordered list of field IDs (equivalent to columnName in the database).
hidden_fieldsstring[]List of field IDs (equivalent to columnName in the database) to be hidden.
filterobjectStructured filter configuration.
order_mapobjectSorting configuration (mapping field IDs/columnNames to order).
propertiesobjectType-specific configuration (see below).

Specific settings for the grid type:

PropertyTypeDescription
fieldWidthMapRecord<string, number>Mapping of field IDs (columnName) to their column widths in pixels.
freezeColumnsnumberNumber of columns to freeze from the left side.
columnStatsRecord<string, ColumnStatConfig>Column statistics configuration (see below).

The columnStats property allows you to display summary statistics at the bottom of each column. Each key is a field ID (columnName), and the value is a ColumnStatConfig object:

PropertyTypeDescription
typeColumnStatTypeThe type of statistic to display.
precisionnumberNumber of decimal places for numeric results (default: 2).
TypeDescriptionApplicable Field Types
countAllCount all rowsAll types except checkbox
countValuesCount values (for multi-value fields, counts array elements)All types except checkbox
countUniqueCount unique valuesAll types except checkbox
countEmptyCount empty valuesAll types except checkbox
countNotEmptyCount non-empty valuesAll types except checkbox
checkedCount checked (true) valuescheckbox
uncheckedCount unchecked (false) valuescheckbox
percentEmptyPercentage of empty valuesAll types except checkbox
percentNotEmptyPercentage of non-empty valuesAll types except checkbox
percentCheckedPercentage of checked valuescheckbox
percentUncheckedPercentage of unchecked valuescheckbox
sumSum of numeric valuesnumber, rating
avgAverage of numeric valuesnumber, rating, checkbox
minMinimum valuenumber, rating, date
maxMaximum valuenumber, rating, date
medianMedian valuenumber, rating
stdDevStandard deviationnumber, rating
rangeDate range (days)date
{
"columnStats": {
"price": { "type": "sum", "precision": 2 },
"quantity": { "type": "avg" },
"completed": { "type": "percentChecked" }
}
}

Specific settings for the gallery type:

PropertyTypeDescription
hideEmptyFieldsbooleanIf true, fields with no value won’t be displayed on the card.
coverPreviewstring | nullField ID (columnName) to use for the card cover, or "content", "cover".
fitContentbooleanIf true, the cover image will be scaled to fit within the card.

Specific settings for the kanban type:

PropertyTypeDescription
groupByFieldstringThe ID of the field (columnName) used to group cards into columns.
cardSizestringSize of the cards: "small", "medium", or "large".