---
title: list
label: List
---
The list widget allows you to create a repeatable item in the UI which saves as a list of widget values. map a user-provided string with a comma delimiter into a list. You can choose any widget as a child of a list widget—even other lists.

* **Name:** `list`
* **UI:** without any `fields` specified, the list widget defaults to a text input for entering comma-separated values; with `fields`  specified, the list widget contains a repeatable child widget, with controls for adding, deleting, and re-ordering the repeated widgets.
* **Data type:** list of widget values
* **Options:**

  * `default`: you may specify a list of strings to populate the basic text field, but declare defaults on the child widgets if you are specifying `fields`;
  * `allow_add`: `false` hides the button to add additional items
  * `collapsed`: when `true`, the entries collapse by default
  * `summary`: specify the label displayed on collapsed entries
  * `minimize_collapsed`: when `true`, collapsing the list widget will hide all of it's entries instead of showing summaries
  * `label_singular`: the text to show on the add button
  * `field`: a single widget field to be repeated
  * `fields`: a nested list of multiple widget fields to be included in each repeatable iteration
  * `max`: maximum number of items in the list
  * `min`: minimum number of items in the list
  * `add_to_top`: when `true`, new entries will be added to the top of the list
* **Example** (`field`/`fields` not specified):

  ```yaml
  - label: "Tags"
    name: "tags"
    widget: "list"
    default: ["news"]
  ```
* **Example** (`allow_add` marked `false`):

  ```yaml
  - label: "Tags"
    name: "tags"
    widget: "list"
    allow_add: false
    default: ["news"]
  ```
* **Example** (with `field`):

  ```yaml
  - label: "Gallery"
    name: "galleryImages"
    widget: "list"
    summary: '{{fields.image}}'
    field: {label: Image, name: image, widget: image}
  ```
* **Example** (with `fields`):

  ```yaml
  - label: "Testimonials"
    name: "testimonials"
    widget: "list"
    summary: '{{fields.quote}} - {{fields.author.name}}'
    fields:
      - {label: Quote, name: quote, widget: string, default: "Everything is awesome!"}
      - label: Author
        name: author
        widget: object
        fields:
          - {label: Name, name: name, widget: string, default: "Emmet"}
          - {label: Avatar, name: avatar, widget: image, default: "/img/emmet.jpg"}
  ```
* **Example** (`collapsed` marked `false`):

  ```yaml
  - label: "Testimonials"
    name: "testimonials"
    collapsed: false
    widget: "list"
    fields:
      - {label: Quote, name: quote, widget: string, default: "Everything is awesome!"}
      - {label: Author, name: author, widget: string }
  ```
* **Example** (`minimize_collapsed` marked `true`):

  ```yaml
  - label: "Testimonials"
    name: "testimonials"
    minimize_collapsed: true
    widget: "list"
    fields:
      - {label: Quote, name: quote, widget: string, default: "Everything is awesome!"}
      - {label: Author, name: author, widget: string }
  ```

* **Example** (with `max` & `min`):
  ```yaml
  - label: "Tags"
    name: "tags"
    widget: "list"
    max: 3
    min: 1
    default: ["news"]
  ```
* **Example** (`add_to_top` marked `true`):
  ```yaml
  - label: "Tags"
    name: "tags"
    widget: "list"
    add_to_top: true
  ```