# Docyrus Data Source Picker
URL: /docs/web/components/docyrus-data-source-picker
Docyrus Data Source Picker component with multiple variants and sizes.
**Demo:**
```tsx
'use client';
import { Database, FileJson, ServerCog } from 'lucide-react';
export function DocyrusDataSourcePickerDemo() {
return (
DocyrusDataSourcePicker
Render-prop wrapper — pairs an apps → data sources tree with a record picker dialog.
TreeSelect
— pick an app / data source
Select record
— opens a record picker backed by useDocyrusDataTable
Requires a Docyrus
{' '}
RestApiClient
{' '}
— see the JSONata / Handlebars / Adaptive Card editor pages in the playground for live usage.
);
}
```
## Installation
```bash
pnpm dlx @docyrus/cli add @docyrus/ui-docyrus-data-source-picker
```
**Dependencies:**
- [lucide-react](https://www.npmjs.com/package/lucide-react)
## Usage
```tsx
import {
DocyrusDataSourcePicker
} from "@docyrus/ui/components/docyrus-data-source-picker";
```
## API Reference
| Prop | Type | Default |
|------|------|---------|
| `schema` | `JsonSchema \| null` | — |
| `selectedDataSource` | `DataSource \| null` | — |
| `jsonataContextPaths` | `Array` | — |
| `handlebarsContextPaths` | `Array` | — |
| `selectedRecord` | `Record \| null` | — |
| `recordText` | `string` | — |
| `hasSelection` | `boolean` | — |
| `className` | `string` | — |