> For the complete documentation index, see [llms.txt](https://novaos.gitbook.io/main/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://novaos.gitbook.io/main/docs/app-development/additional-user-interfaces/file-picker.md).

# File picker

This page is all about letting a user choose files from their file system. NovaOS lets users select files from the registered `Files@runnova` app.

## Requesting a file selector window

Here is the method to summon a choose file window with the default files app in NovaOS.

```javascript
await ntx.olp.useHandler("file_manager", { 
 "opener": "any", 
 "dir": "Downloads/" 
});
```

This returns the selected file ID once the user has selected it.

Here, we use the [OL protocol](/main/docs/app-development/the-open-launch-protocol.md) to launch the application with the data, which has some parameters.

{% hint style="warning" %}
Apps can access this feature through the `myWindow` method. To use the myWindow method, you have to use the `greenflag()` function. Otherwise, it will return undefined. This is due to the fact that the `myWindow` object is only defined after the app document is loaded.

More: [greenflag](/main/docs/app-development/timing.md), [myWindow](/main/docs/app-development/controlling-your-window.md).
{% endhint %}

### Opener params

| Opener param | description                                            | examples                                   |
| ------------ | ------------------------------------------------------ | ------------------------------------------ |
| opener       | A file type to filter with.                            | <p>"opener":"json"<br>"opener":"app"</p>   |
| dir          | A directory to initialize the choose file window with. | <p>"dir":"Downloads/"<br>"dir":"Apps/"</p> |
