<a id="streamfield-reference"></a>

# StreamField reference

* [StreamField block reference](blocks.md)
  * [`wagtail.fields.StreamField`](blocks.md#wagtail.fields.StreamField)
  * [Block options and methods](blocks.md#block-options-and-methods)
  * [Field block types](blocks.md#field-block-types)
  * [Structural block types](blocks.md#structural-block-types)
  * [Supporting components](blocks.md#supporting-components)
* [Form widget client-side API](widget_api.md)
  * [`render()`](widget_api.md#render)
  * [`getByName()`](widget_api.md#getByName)
  * [`idForLabel`](widget_api.md#idForLabel)
  * [`getValue()`](widget_api.md#getValue)
  * [`getState()`](widget_api.md#getState)
  * [`setState()`](widget_api.md#setState)
  * [`focus()`](widget_api.md#focus)
* [StreamField data migration reference](data_migrations.md)
  * [wagtail.blocks.migrations.migrate_operation](data_migrations.md#wagtail-blocks-migrations-migrate-operation)
  * [wagtail.blocks.migrations.operations](data_migrations.md#wagtail-blocks-migrations-operations)
  * [wagtail.blocks.migrations.utils](data_migrations.md#wagtail-blocks-migrations-utils)
  * [Block paths](data_migrations.md#block-paths)

## [StreamField block reference](blocks.md#streamfield-block-reference)

Details the block types provided by Wagtail for use in StreamField and how they can be combined into new block types.

## [Form widget client-side API](widget_api.md#streamfield-widget-api)

Defines the JavaScript API that must be implemented for any form widget used within a StreamField block.

## [StreamField data migration reference](data_migrations.md#streamfield-data-migration-reference)

Details the tools provided in `wagtail.blocks.migrations` for `StreamField` data migrations.
