---
title: Module index
description: Generated inventory of the local go-iroh module checkouts.
icon: table
---

Generated by `./scripts/update-index.py`. Paths, branches, and dirty
flags describe the machine that generated this page; regenerate before
relying on them. Set `GO_IROH_ROOT` to index a different checkout
collection.

14 modules indexed.

## Modules

| Module | Go | Group | Purpose | Commands |
| --- | --- | --- | --- | --- |
| `github.com/tmc/go-iroh` | 1.26 | core | `go-iroh` is a Go implementation of iroh. | `cmd/iroh`, `cmd/iroh-dns-server`, `cmd/iroh-relay`, `cmd/wasmrelaytest` |
| `github.com/tmc/go-iroh-experiments/contentdiscovery` | 1.26 | go-iroh-experiments | `contentdiscovery` implements the iroh content tracker protocol: an overlay for announcing which peers can serve a given blob or collection, and for finding providers of content by its hash. | `cmd/content-discovery`, `cmd/content-tracker` |
| `github.com/tmc/go-iroh-experiments/dagsync` | 1.26 | go-iroh-experiments | `dagsync` implements the iroh-dag-sync example protocol: synchronizing IPLD DAGs between peers over iroh. | — |
| `github.com/tmc/go-iroh-experiments/directpath` | 1.26 | go-iroh-experiments | `directpath` is a small direct-path probe for go-iroh experiments. | `cmd/directpath-probe`, `cmd/twobox-directpath` |
| `github.com/tmc/go-iroh-experiments/dtrain` | 1.26 | go-iroh-experiments | `dtrain` provides distributed-training coordination primitives over go-iroh. | — |
| `github.com/tmc/go-iroh-experiments/enclaveiroh` | 1.26 | go-iroh-experiments | Custody an iroh endpoint's identity in the Apple Secure Enclave, and run it inside a hardened process. | `cmd/enclave-iroh` |
| `github.com/tmc/go-iroh-experiments/grpciroh` | 1.26 | go-iroh-experiments | `grpciroh` runs unmodified gRPC services over an iroh QUIC connection. | `cmd/grpc-iroh-demo` |
| `github.com/tmc/go-iroh-experiments/h3iroh` | 1.26 | go-iroh-experiments | `h3iroh` is an HTTP/3 connection adapter over an iroh connection: it lets an HTTP/3 client and server speak over an iroh QUIC connection instead of a raw UDP socket. | — |
| `github.com/tmc/go-iroh-experiments/pkarrnaming` | 1.26 | go-iroh-experiments | `pkarrnaming` publishes and resolves iroh content names using pkarr: sovereign, public-key–addressed DNS records distributed over Mainline DHT relays. | `cmd/pkarr-naming` |
| `github.com/tmc/go-iroh-experiments/s3baostore` | 1.26 | go-iroh-experiments | `s3baostore` is an iroh-blobs provider backed by a remote HTTP/S3 object store. | — |
| `github.com/tmc/go-iroh-experiments/tlogiroh` | 1.26 | go-iroh-experiments | `tlogiroh` is a distributed transparency log over go-iroh: an append-only, publicly verifiable log of opaque records, distributed without a central operator having to stay online. | `cmd/tlog-iroh` |
| `github.com/tmc/go-iroh-experiments/wasmrelay` | 1.26 | go-iroh-experiments | `wasmrelay` contains browser (js/wasm) relay-only demos for go-iroh: iroh endpoints running inside a browser tab, connected over a relay with IP transports compiled out. | `cmd/wasm-gossip-chat`, `cmd/wasmrelay-demo` |
| `github.com/tmc/go-iroh-experiments/x402iroh` | 1.26 | go-iroh-experiments | `x402iroh` runs x402-paid HTTP services over iroh. | `cmd/x402-iroh` |
| `github.com/tmc/go-iroh-experiments/xetstore` | 1.26 | go-iroh-experiments | `xetstore` stores BAO outboards for HuggingFace files served by the Xet content-addressed store, so a model or dataset file can be served as an iroh blob without copying it locally. | — |

## Local checkout state

| Module | Path | Branch | Worktree |
| --- | --- | --- | --- |
| `go-iroh` | `/Volumes/tmc/go/src/github.com/tmc/go-iroh` | `main` | dirty |
| `contentdiscovery` | `/Volumes/tmc/go/src/github.com/tmc/go-iroh-experiments/contentdiscovery` | `main` | clean |
| `dagsync` | `/Volumes/tmc/go/src/github.com/tmc/go-iroh-experiments/dagsync` | `main` | clean |
| `directpath` | `/Volumes/tmc/go/src/github.com/tmc/go-iroh-experiments/directpath` | `main` | clean |
| `dtrain` | `/Volumes/tmc/go/src/github.com/tmc/go-iroh-experiments/dtrain` | `main` | clean |
| `enclaveiroh` | `/Volumes/tmc/go/src/github.com/tmc/go-iroh-experiments/enclaveiroh` | `main` | clean |
| `grpciroh` | `/Volumes/tmc/go/src/github.com/tmc/go-iroh-experiments/grpciroh` | `main` | clean |
| `h3iroh` | `/Volumes/tmc/go/src/github.com/tmc/go-iroh-experiments/h3iroh` | `main` | clean |
| `pkarrnaming` | `/Volumes/tmc/go/src/github.com/tmc/go-iroh-experiments/pkarrnaming` | `main` | clean |
| `s3baostore` | `/Volumes/tmc/go/src/github.com/tmc/go-iroh-experiments/s3baostore` | `main` | clean |
| `tlogiroh` | `/Volumes/tmc/go/src/github.com/tmc/go-iroh-experiments/tlogiroh` | `main` | clean |
| `wasmrelay` | `/Volumes/tmc/go/src/github.com/tmc/go-iroh-experiments/wasmrelay` | `main` | clean |
| `x402iroh` | `/Volumes/tmc/go/src/github.com/tmc/go-iroh-experiments/x402iroh` | `main` | clean |
| `xetstore` | `/Volumes/tmc/go/src/github.com/tmc/go-iroh-experiments/xetstore` | `main` | clean |

## Public packages

- `github.com/tmc/go-iroh`: `blobs`, `dns`, `dnsserver`, `docs`, `endpointticket`, `gossip`, `iroh`, `irpc`, `key`, `metrics`, `netaddr`, `pkarr`, `postcard`, `quicconn`, `relay`, `relayserver`, `watch`
- `github.com/tmc/go-iroh-experiments/contentdiscovery`: —
- `github.com/tmc/go-iroh-experiments/dagsync`: —
- `github.com/tmc/go-iroh-experiments/directpath`: —
- `github.com/tmc/go-iroh-experiments/dtrain`: —
- `github.com/tmc/go-iroh-experiments/enclaveiroh`: —
- `github.com/tmc/go-iroh-experiments/grpciroh`: —
- `github.com/tmc/go-iroh-experiments/h3iroh`: —
- `github.com/tmc/go-iroh-experiments/pkarrnaming`: —
- `github.com/tmc/go-iroh-experiments/s3baostore`: —
- `github.com/tmc/go-iroh-experiments/tlogiroh`: —
- `github.com/tmc/go-iroh-experiments/wasmrelay`: —
- `github.com/tmc/go-iroh-experiments/x402iroh`: —
- `github.com/tmc/go-iroh-experiments/xetstore`: —
