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

# hub

Browse and search the Runpod Hub marketplace to discover deployable repos. You can list popular repos, search by name, and get details for specific repos. Use Hub repo IDs with [`runpodctl serverless create --hub-id`](/runpodctl/reference/runpodctl-serverless) to deploy endpoints directly from the Hub.

```bash theme={"theme":{"light":"github-light","dark":"github-dark"}}
runpodctl hub <subcommand> [flags]
```

## Subcommands

### List repos

List repos from the Hub marketplace. By default, shows the top 10 repos ordered by stars.

```bash theme={"theme":{"light":"github-light","dark":"github-dark"}}
# List top repos by stars
runpodctl hub list

# List only Serverless repos
runpodctl hub list --type SERVERLESS

# List only Pod repos
runpodctl hub list --type POD

# Filter by category
runpodctl hub list --category ai --limit 20

# Order by deployment count
runpodctl hub list --order-by deploys

# Filter by repo owner
runpodctl hub list --owner runpod
```

#### List flags

<ResponseField name="--type" type="string">
  Filter by deployment type (`POD` or `SERVERLESS`). This filter is applied client-side, so `--limit` may return fewer results than specified.
</ResponseField>

<ResponseField name="--category" type="string">
  Filter by category.
</ResponseField>

<ResponseField name="--owner" type="string">
  Filter by repo owner.
</ResponseField>

<ResponseField name="--order-by" type="string" default="stars">
  Sort results by field: `createdAt`, `deploys`, `releasedAt`, `stars`, `updatedAt`, or `views`.
</ResponseField>

<ResponseField name="--order-dir" type="string" default="desc">
  Sort direction: `asc` or `desc`.
</ResponseField>

<ResponseField name="--limit" type="int" default="10">
  Maximum number of results to return.
</ResponseField>

<ResponseField name="--offset" type="int">
  Number of results to skip for pagination.
</ResponseField>

### Search repos

Search for repos in the Hub by name:

```bash theme={"theme":{"light":"github-light","dark":"github-dark"}}
# Search for vLLM repos
runpodctl hub search vllm

# Search Serverless repos only
runpodctl hub search whisper --type SERVERLESS

# Limit search results
runpodctl hub search stable-diffusion --limit 5
```

#### Search flags

<ResponseField name="--type" type="string">
  Filter by deployment type (`POD` or `SERVERLESS`). This filter is applied client-side, so `--limit` may return fewer results than specified.
</ResponseField>

<ResponseField name="--category" type="string">
  Filter by category.
</ResponseField>

<ResponseField name="--owner" type="string">
  Filter by repo owner.
</ResponseField>

<ResponseField name="--order-by" type="string" default="stars">
  Sort results by field: `createdAt`, `deploys`, `releasedAt`, `stars`, `updatedAt`, or `views`.
</ResponseField>

<ResponseField name="--order-dir" type="string" default="desc">
  Sort direction: `asc` or `desc`.
</ResponseField>

<ResponseField name="--limit" type="int" default="10">
  Maximum number of results to return.
</ResponseField>

<ResponseField name="--offset" type="int">
  Number of results to skip for pagination.
</ResponseField>

### Get repo details

Get detailed information about a specific Hub repo by its ID or owner/name:

```bash theme={"theme":{"light":"github-light","dark":"github-dark"}}
# Get by listing ID
runpodctl hub get cm8h09d9n000008jvh2rqdsmb

# Get by owner/name
runpodctl hub get runpod-workers/worker-vllm
```

## Deploy from the Hub

After finding a repo you want to deploy, use its listing ID with `serverless create`:

```bash theme={"theme":{"light":"github-light","dark":"github-dark"}}
# Find a repo
runpodctl hub search vllm

# Deploy it
runpodctl serverless create --hub-id cm8h09d9n000008jvh2rqdsmb --name "my-vllm"
```

GPU IDs and container disk size are automatically pulled from the Hub release config. You can override the GPU type with `--gpu-id`.

## Related commands

* [`runpodctl serverless create`](/runpodctl/reference/runpodctl-serverless)
* [`runpodctl template search`](/runpodctl/reference/runpodctl-template)
