---
group: Widgets
title: File
weight: 14
---

- **Name:** `file`
- **UI:** File picker button opens media gallery
- **Data type:** File path string

The file widget allows editors to upload a file or select an existing one from the media library. The path to the file will be saved to the field as a string.

## Widget options

For common options, see [Common widget options](/docs/widgets#common-widget-options).

| Name          | Type   | Default | Description                                                                                                                                  |
| ------------- | ------ | ------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| default       | string | `null`  | _Optional_. The default value for the field. Accepts a string.                                                                               |
| media_folder  | string |         | _Optional_. Specifies the folder path where uploaded files should be saved, relative to the base of the repo                                 |
| public_folder | string |         | _Optional_. Specifies the folder path where the files uploaded by the media library will be accessed, relative to the base of the built site |

## Example

<CodeTabs>
```yaml
name: manual_pdf
label: Manual PDF
widget: file
default: /uploads/general-manual.pdf
```

```js
name: 'manual_pdf',
label: 'Manual PDF',
widget: 'file',
default: '/uploads/general-manual.pdf',
```

</CodeTabs>
