Firepanel supports a rich set of field types for modeling your Firestore data. Each type renders an appropriate editor and display component in the CMS.
Text & String Fields
| Field Type | Description |
|---|---|
| text | Single-line plain text input |
| Email address with format validation | |
| url | URL input with format validation |
| phone | Phone number input |
| password | Password field (value is masked in the UI) |
| slug | URL-friendly slug, optionally auto-generated from another field |
| uuid | UUID field, auto-generated or manually set |
Number & Range Fields
| Field Type | Description |
|---|---|
| number | Numeric value (integer or decimal) |
| rating | Star rating with configurable max value |
| slider | Numeric value selected via a slider with min/max range |
Date & Time Fields
| Field Type | Description |
|---|---|
| date | Date and/or datetime picker, stored as a Firestore Timestamp |
Boolean Fields
| Field Type | Description |
|---|---|
| boolean | Toggle switch for true/false values |
Selection Fields
| Field Type | Description |
|---|---|
| enum | Dropdown selection from a predefined list of options |
| color | Color picker, stores a hex color code |
Rich Content Fields
| Field Type | Description |
|---|---|
| richText | WYSIWYG rich text editor (powered by Tiptap) |
| markdown | Markdown text editor |
| json | Raw JSON editor for arbitrary structured data |
Media & Reference Fields
| Field Type | Description |
|---|---|
| media | File upload or Cloud Storage picker — images, documents, videos |
| reference | Firestore document reference to another collection |
| relation | Related document lookup across collections |
| geoPoint | Latitude/longitude coordinate picker |
| user | Reference to a Firepanel/Firebase user |
Composite Fields
| Field Type | Description |
|---|---|
| component | A single embedded component (defined in Content Types) |
| multiComponent | A list of embedded components |
Special / System Fields
| Field Type | Description |
|---|---|
| subcollection | Defines a subcollection nested under a document |
| createdBy | Auto-populated with the user who created the document |
| updatedBy | Auto-populated with the user who last updated the document |
| private | Field is hidden from non-admin users in the CMS |
Note:
Field types are configured when you define a Content Type. You cannot change the type of an existing field without creating a new one.