Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
52 changes: 52 additions & 0 deletions compatibility.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
---
title: "Compatibility"
---

Send data to and from any device running anywhere, big or small — cloud servers, tablets, or embedded systems. The core peer-to-peer technology is open source and built on open standards, so you're never locked in.

## Operating Systems

iroh supports all major operating systems:

| OS | Supported |
|----|-----------|
| Linux | Yes |
| macOS | Yes |
| Windows | Yes |
| Android | Yes |
| iOS | Yes |
| WebAssembly (browser) | [Yes](/deployment/other-languages#webassembly-and-browsers) |
| FreeRTOS | Yes |

## Hardware

iroh runs on a wide range of hardware, from servers to microcontrollers.

### Tested Platforms

| Hardware | Notes |
|----------|-------|
| x86\_64 servers & desktops | Fully supported |
| Apple Silicon (M-series) | Fully supported |
| Raspberry Pi | Fully supported |
| ESP32 | Supported with caveats |

### ESP32 Resource Requirements

We have built a version of iroh which has been tested on ESP32 with very constrained resources:

- **4 MiB Flash / 4 MiB RAM** — working, though 4 MiB flash is right at the limit
- **4 MiB Flash / 2 MiB RAM** — also works in testing

To use iroh on ESP32 in production, [contact us for support & licensing options](https://cal.com/team/number-0/n0-protocol-services?overlayCalendar=true).

## Network Transports

| Transport | Status |
|-----------|--------|
| UDP / IP (internet) | Yes |
| WiFi / LAN | Yes |
| Ethernet | Yes |
| Bluetooth (BLE) | [In progress](/transports/bluetooth) |
| Tor | [Yes](/transports/tor) |
| Nym | [Yes](/transports/nym) |
19 changes: 18 additions & 1 deletion deployment/other-languages.mdx
Original file line number Diff line number Diff line change
@@ -1,12 +1,29 @@
---
title: "Using Iroh in Other Languages"
title: "Language Bindings"
---


While iroh is written in Rust, it can be used in many other languages and
environments.

There are several practical approaches to using iroh in your language of choice:


## Language Bindings

| Language | Status |
|----------|--------|
| [Rust](https://github.com/n0-computer/iroh) | Official |
| [Kotlin](https://github.com/n0-computer/iroh-ffi) | Archived at v0.35 |
| [Swift](https://github.com/n0-computer/iroh-ffi) | Archived at v0.35 |
| [TypeScript](https://github.com/rayhanadev/iroh-ts) | Community |

The [n0.computer](https://n0.computer) engineering team can help build and maintain production-grade
bindings for your language. [Contact
us](https://cal.com/team/number-0/n0-protocol-services?overlayCalendar=true) to
discuss your requirements.


### Write a Wrapper

If you're comfortable with a little bit of Rust, write your own small
Expand Down
3 changes: 3 additions & 0 deletions docs.json
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@
"what-is-iroh",
"quickstart",
"examples/examples",
"compatibility",
"deployment/other-languages",
{
"group": "How it works",
"expanded": true,
Expand Down Expand Up @@ -69,6 +71,7 @@
{
"group": "Deployment",
"pages": [
"deployment/compatibility",
"deployment/dedicated-infrastructure",
"deployment/metrics",
"deployment/security-privacy",
Expand Down
Loading