Build a private P2P device network for capability-first services
With Fungi, you can securely connect your own devices, run container or WASI services under explicit runtime policy, manage remote services with simple commands, and access them locally without exposing them to the public internet.
Need help or want to follow updates? Join the Fungi Discord.
- P2P Connectivity: Built on rust-libp2p, supporting automatic NAT traversal and mDNS discovery.
- Secure: End-to-end encryption with PeerID-based authentication.
- Fast and Lightweight: Built in Rust, around 20 MB idle RAM, with support for macOS, Windows, Linux, and Android.
- Sandboxed Services: Run sandboxed services with the built-in WASI runtime or an optional Docker backend.
- Simple Remote Service Control: Use a few commands like
pull,start,stop, andremoveto manage remote services locally. - Port Forwarding and File Transfer: forward any TCP service and includes a built-in file transfer module, making it easy to create a lightweight NAS.
- Modular architecture:
fungi-daemon: The background service that handles P2P networking and manage services.fungi-cli: A command-line tool to interact with the daemon via gRPC.fungi-app: (optional, external) An official GUI client for easier management (see fungi-app).
Note on file transfer The older FTP/WebDAV-style file transfer is being gradually deprecated in favor of Sandboxed Services.
macOS / Linux quick install:
curl -fsSL https://fungi.rs/install.sh | sh- Or download from GitHub Releases (Windows/Linux/macOS/Android binaries available)
- Or see the install and build guide
Start with the quick starts:
Full documentation: fungi.rs/docs.
| Platform | Status |
|---|---|
| macOS | ✅ Ready |
| Windows | ✅ Ready |
| Linux | ✅ Ready |
| Android | ✅ Ready |
| iOS | 🚧 In progress |
Starting from 2026, the Fungi project actively adopts AI-assisted coding.
- Rust ensures safety in most cases
- Modular design
- Following TDD as much as possible
Apache License 2.0


