# Dockstore Platform Profile

## Overview

[Dockstore](https://dockstore.org/) is an open platform for sharing reusable, scalable bioinformatics tools and workflows. It implements the TRS v2 specification and integrates with WES/TES execution platforms.

## Supported GA4GH Specs

| Spec | Support | Notes |
|------|---------|-------|
| TRS v2.0.1 | Full | Native TRS implementation |
| WES v1.1 | Via launch | Launch workflows to WES-compatible platforms |
| TES v1.1 | Via launch | Launch tasks to TES-compatible platforms |

## Configuration

```toml
# profiles/dockstore.toml
[platform]
name = "dockstore"
display_name = "Dockstore"
base_url = "https://dockstore.org"

[auth]
method = "bearer"
token_env = "DOCKSTORE_TOKEN"
# Get a token from https://dockstore.org/accounts

[trs]
enabled = true
base_url = "https://dockstore.org/api/ga4gh/trs/v2"
```

## Quick Start

```python
from ai4gh.specs.trs.client import TRSClient

async with TRSClient(
    base_url="https://dockstore.org/api/ga4gh/trs/v2",
) as client:
    # List available tool classes
    classes = await client.get_tool_classes()
    for tc in classes:
        print(f"{tc.name}: {tc.description}")

    # Search for tools
    tools = await client.list_tools()
    for tool in tools[:5]:
        print(f"{tool.name} ({tool.toolclass.name})")
```

## Authentication

Dockstore uses personal access tokens:

1. Log in to [Dockstore](https://dockstore.org/)
2. Navigate to Accounts page
3. Copy your Dockstore token
4. Set `DOCKSTORE_TOKEN` environment variable

```bash
export DOCKSTORE_TOKEN="your-token-here"
```

## Compliance Testing

```bash
ai4gh test trs https://dockstore.org/api/ga4gh/trs/v2
```
