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

# pickReader

> Best available reader for this environment, or null if none. Memoized per document: the reader owns an open device connection that has to outlive a component remount or an SPA navigation, or every remount would reconnect and, before it could, prompt. Call `resetReaderCache` to drop it.

Best available reader for this environment, or null if none. Memoized per document: the reader owns an open device connection that has to outlive a component remount or an SPA navigation, or every remount would reconnect and, before it could, prompt. Call `resetReaderCache` to drop it.

```ts theme={null}
import { pickReader } from "@endstate-sdk/reader";
```

```ts theme={null}
pickReader(): NfcReader | null
```

## Example

```ts theme={null}
const reader = pickReader();
if (!reader) throw new Error("No supported NFC reader in this browser.");
```
