Iroh 1.0 - Dial Keys, not IPs
Iroh 1.0 is out. Now is the time to build.
Fast connections.
Anywhere.
Forever.
The core peer-to-peer technology is open source and built on open standards, so you're never locked in: connect over our free community relays, self-host your own, or let us run them for you, and switch between them whenever you want.
“Doubling the network speed halves our compute budget.”
Reach every device, on any network
Write your app once and connect it everywhere, with one API.
Connect over Wi-Fi, cellular, ethernet, LAN, or Bluetooth, or bring your own transport.
Direct peer-to-peer links bypass NATs and firewalls, with relays as automatic fallback, so you lean on the cloud less and cut egress costs.
The same code runs from an ESP32 or Raspberry Pi up to a Linux server, in Rust, Swift, Kotlin, and JavaScript.
Every connection is end-to-end encrypted, with opt-in observability.










Distributed AI Training
Train foundation LLMs with compute distributed around the world, across AWS, GCP, Azure, and self-hosted infrastructure.
Video Streaming
Stream video between devices, using peer to peer technology. Create encrypted connections built on open standards, across the globe or across the room.
Real-time Sync for Mobile Applications
Powers apps for hundreds of thousands of devices around the world, even when internet access is precarious.
Point of Sale Payments
Connect payment terminals directly to point of sale systems over Bluetooth, LAN, or Wi-Fi with full PCI compliance and no additional servers.
IoT & Embedded Devices
Run iroh on ESP32, Raspberry Pi, and Linux with the same API. Devices discover each other automatically. No brokers, no gateways.
File Transfer & Sync
Move files and large blobs directly between devices with content-addressed, resumable transfers that verify every byte.
Ready for production
Performant. Every commit to iroh's main branch runs through a growing set of simulations & tests.
Monitored. Observability and network diagnostics track connection health and throughput across all your devices and services.
Supported. Every major release is supported for multiple years with extended support contracts available. Get help from the pros.
Dozens of open-source, composable protocols built on top of iroh. Mix & match to get the feature set you need.
import IrohLib
@main
struct App {
static func main() async throws {
// Dial a peer and echo a message over a bidirectional stream.
let endpoint = try await Endpoint.bind(
options: EndpointOptions(preset: presetN0())
)
let conn = try await endpoint.connect(addr: serverAddr, alpn: ALPN)
let bi = try await conn.openBi()
try await bi.send().writeAll(buf: Data("hello iroh".utf8))
try await bi.send().finish()
let echoed = try await bi.recv().readToEnd(sizeLimit: 64)
print(String(decoding: echoed, as: UTF8.self))
}
}A closer look at QUIC NEW_TOKEN tokens, why they exist, and what they buy you in iroh and noq.