Column Types

TypeSQLiteOptions
stringTEXTmax_length
textTEXTLong-form content
intINTEGERmin, max
floatREALmin, max
boolINTEGERStored as 0/1
enumTEXT+CHECKvalues (required), default
jsonTEXTStored as JSON string
dateTEXTISO 8601 date
datetimeTEXTISO 8601 datetime
refTEXT FKForeign key. on_delete: cascade / restrict / set_null
fileTEXTR2 file reference (URL)

Column modifiers

Add after the type in short-form, or as object keys:

Object form

For more control, use the full object form instead of short-form strings:

{
  "price": {
    "type": "float",
    "required": true,
    "min": 0,
    "max": 99999,
    "default": 0
  },
  "status": {
    "type": "enum",
    "values": ["draft", "published", "archived"],
    "default": "draft",
    "required": true
  },
  "author_id": {
    "type": "ref",
    "ref": "users",
    "required": true,
    "on_delete": "cascade"
  }
}