> ## Documentation Index
> Fetch the complete documentation index at: https://docs.peanutsapp.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Field Types Reference

> Complete guide to all available field types and their configuration options

Helpers are built from fields that capture different types of data. This reference covers all available field types and how to configure them.

## Field Types Overview

<CardGroup cols={3}>
  <Card title="Text" icon="font">
    Free-form text input
  </Card>

  <Card title="Number" icon="hashtag">
    Numeric values with optional formatting
  </Card>

  <Card title="Date" icon="calendar">
    Date picker
  </Card>

  <Card title="DateTime" icon="calendar-clock">
    Date and time combined
  </Card>

  <Card title="Time" icon="clock">
    Time of day
  </Card>

  <Card title="Select" icon="list">
    Dropdown with predefined options
  </Card>

  <Card title="Checkbox" icon="square-check">
    Yes/no toggle
  </Card>

  <Card title="Image" icon="image">
    Photo upload with Smart Scan
  </Card>

  <Card title="Calculated" icon="calculator">
    Auto-computed from other fields
  </Card>
</CardGroup>

***

## Text Field

Free-form text input for names, descriptions, notes, and other text data.

**Configuration Options:**

| Option      | Description                | Default |
| ----------- | -------------------------- | ------- |
| Required    | Must have a value          | No      |
| Placeholder | Hint text shown when empty | None    |
| Max length  | Character limit            | None    |

**Best for:** Names, descriptions, notes, locations, comments

***

## Number Field

Numeric input with optional formatting for currencies, units, and precision.

**Configuration Options:**

| Option         | Description                     | Default |
| -------------- | ------------------------------- | ------- |
| Required       | Must have a value               | No      |
| Prefix         | Text before number (e.g., "\$") | None    |
| Suffix         | Text after number (e.g., "kg")  | None    |
| Decimal places | Precision                       | 0       |
| Min value      | Minimum allowed                 | None    |
| Max value      | Maximum allowed                 | None    |

**Best for:** Amounts, quantities, measurements, ratings, scores

<Tip>
  Use prefix for currencies ("\$", "€") and suffix for units ("km", "lbs", "hrs").
</Tip>

***

## Date Field

Date picker for selecting a specific day.

**Configuration Options:**

| Option           | Description                | Default |
| ---------------- | -------------------------- | ------- |
| Required         | Must have a value          | No      |
| Default to today | Pre-fill with current date | No      |
| Min date         | Earliest selectable        | None    |
| Max date         | Latest selectable          | None    |

**Best for:** Due dates, birthdays, event dates, purchase dates

***

## DateTime Field

Combined date and time picker for precise timestamps.

**Configuration Options:**

| Option         | Description                     | Default |
| -------------- | ------------------------------- | ------- |
| Required       | Must have a value               | No      |
| Default to now | Pre-fill with current date/time | No      |

**Best for:** Appointments, deadlines, event start times, log timestamps

***

## Time Field

Time-only picker for recurring daily events.

**Configuration Options:**

| Option   | Description        | Default         |
| -------- | ------------------ | --------------- |
| Required | Must have a value  | No              |
| Format   | 12-hour or 24-hour | Based on locale |

**Best for:** Wake times, medication schedules, daily routines

***

## Select Field

Dropdown menu with predefined options.

**Configuration Options:**

| Option       | Description               | Default |
| ------------ | ------------------------- | ------- |
| Required     | Must select an option     | No      |
| Options      | List of choices           | Empty   |
| Allow custom | Let users add new options | No      |

**Defining Options:**

Options are defined as a list of values:

```
Option 1
Option 2
Option 3
```

**Best for:** Categories, statuses, ratings (1-5), types, priorities

<Tip>
  Use select fields for consistency. If you need users to pick from specific values, select is better than free text.
</Tip>

***

## Checkbox Field

Simple yes/no toggle for boolean values.

**Configuration Options:**

| Option          | Description                 | Default    |
| --------------- | --------------------------- | ---------- |
| Default checked | Start as checked            | No         |
| Label           | Text shown next to checkbox | Field name |

**Best for:** Completed/not completed, yes/no questions, opt-ins, confirmations

***

## Image Field

Photo upload with optional Smart Scan for automatic data extraction.

**Configuration Options:**

| Option     | Description                | Default |
| ---------- | -------------------------- | ------- |
| Required   | Must upload image          | No      |
| Smart Scan | Enable AI extraction       | No      |
| Scan type  | Receipt, product, document | Receipt |

**Smart Scan Types:**

<AccordionGroup>
  <Accordion title="Receipt Scan">
    Extracts: Total amount, merchant name, date, payment method
  </Accordion>

  <Accordion title="Product Scan">
    Extracts: Product name, brand, price, barcode data
  </Accordion>

  <Accordion title="Document Scan">
    Extracts: Text content, document type, key fields
  </Accordion>
</AccordionGroup>

**Best for:** Receipt tracking, product logging, document archival

<Info>
  Smart Scan requires a Starter plan or higher and uses AI credits.
</Info>

***

## Calculated Field

Automatically computed value based on formulas referencing other fields.

**Configuration Options:**

| Option  | Description            | Default  |
| ------- | ---------------------- | -------- |
| Formula | Calculation expression | Required |
| Format  | How to display result  | Number   |

**Formula Examples:**

| Formula                | Description         |
| ---------------------- | ------------------- |
| `{price} * {quantity}` | Multiply two fields |
| `{total} / {count}`    | Divide fields       |
| `{weight} * 2.205`     | Convert kg to lbs   |
| `{subtotal} * 1.1`     | Add 10% tax         |

**Best for:** Totals, averages, conversions, derived values

<Warning>
  Calculated fields are read-only. Users cannot edit the value directly.
</Warning>

***

## Common Configuration

All field types share these options:

| Option     | Description                           |
| ---------- | ------------------------------------- |
| Field name | Label shown to users                  |
| Field ID   | Internal identifier (auto-generated)  |
| Required   | Whether the field must have a value   |
| Help text  | Explanation shown below the field     |
| Hidden     | Hide from entry form but keep in data |

## Field Order

Drag and drop fields in the helper editor to reorder them. The order affects:

* Entry form layout
* List view display
* Voice input parsing priority
* Report column order

## Best Practices

<AccordionGroup>
  <Accordion title="Keep Fields Focused">
    Each field should capture one piece of information. Don't combine multiple values in one text field.
  </Accordion>

  <Accordion title="Use Appropriate Types">
    Numbers as Number fields, dates as Date fields. Avoid storing everything as text.
  </Accordion>

  <Accordion title="Set Sensible Defaults">
    Default to today's date, pre-check common options, use placeholders to guide input.
  </Accordion>

  <Accordion title="Make Key Fields Required">
    Require the fields that are essential for the entry to be meaningful.
  </Accordion>
</AccordionGroup>

## Related

<CardGroup cols={2}>
  <Card title="Creating Helpers" icon="plus" href="/core-concepts/helpers">
    Learn how to build helpers with fields
  </Card>

  <Card title="Smart Scan" icon="camera" href="/features/smart-scan">
    Automatic data extraction from images
  </Card>
</CardGroup>
