Docs

Doc / Build



Build OmniEdge from Source

OmniEdge v2.x is a complete rewrite in Rust, providing memory safety, high performance, and cross-platform support.

Repository Structure

github.com/omniedgeio/omniedge (monorepo)
├── crates/
│   ├── omni-cli/        # CLI application
│   ├── omni-tun/        # TUN interface abstraction
│   ├── omni-helper/     # Privileged helper service
│   └── omni-plugin/     # WASM plugin system
├── apps/
│   └── desktop/         # Tauri v2 + React desktop app
├── scripts/             # Build and install scripts
└── examples/
    └── plugins/         # Example WASM plugins

Build Guides

Core Components

Mobile & Embedded (Coming Soon)

Plugin Development

Prerequisites

Rust Toolchain

All platforms require Rust 1.70 or later:

# Install Rust
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

# Verify installation
rustc --version  # Should be 1.70+
cargo --version

Desktop App Requirements

For building the Tauri v2 desktop application:

  • Node.js 18+ and npm
  • Platform-specific requirements (see platform guides)

Quick Build

CLI Only

git clone https://github.com/omniedgeio/omniedge.git
cd omniedge
cargo build --release -p omni-cli

# Binary at: target/release/omniedge (or omniedge.exe on Windows)

Desktop App

git clone https://github.com/omniedgeio/omniedge.git
cd omniedge/apps/desktop
npm install
npm run tauri build

# Installers at: apps/desktop/src-tauri/target/release/bundle/

Architecture Overview

┌─────────────────────────────────────────────────────────────────┐
│                     OmniEdge v2.x Architecture                   │
├─────────────────────────────────────────────────────────────────┤
│  Desktop App (Tauri v2)     │  CLI (omni-cli)                   │
│  ┌───────────────────────┐  │  ┌───────────────────────────┐   │
│  │ React 19 + TypeScript │  │  │ Rust Binary               │   │
│  │ Vite Build            │  │  │ - start/stop/status       │   │
│  └───────────┬───────────┘  │  │ - plugin management       │   │
│              │              │  │ - config commands         │   │
│  ┌───────────▼───────────┐  │  └───────────┬───────────────┘   │
│  │ Tauri v2 Rust Core    │  │              │                   │
│  └───────────┬───────────┘  │              │                   │
├──────────────┼──────────────┴──────────────┼───────────────────┤
│              │       Shared Rust Crates    │                   │
│  ┌───────────▼─────────────────────────────▼───────────────┐   │
│  │                    OmniNervous                           │   │
│  │  (WireGuard-based P2P protocol with NAT traversal)       │   │
│  └───────────────────────────┬─────────────────────────────┘   │
│  ┌───────────────────────────▼─────────────────────────────┐   │
│  │                    omni-tun                              │   │
│  │  (Cross-platform TUN interface)                          │   │
│  └───────────────────────────┬─────────────────────────────┘   │
│  ┌───────────────────────────▼─────────────────────────────┐   │
│  │                    omni-helper                           │   │
│  │  (Privileged operations via IPC)                         │   │
│  └─────────────────────────────────────────────────────────┘   │
└─────────────────────────────────────────────────────────────────┘

V1.x Legacy Builds

For legacy Go/n2n based builds (v1.x), see the archived repositories:


If you have more questions, feel free to discuss.

On This Page

OmniEdge

© 2026 OmniEdge Inc. All rights reserved

Built by a global remote team.

TwitterGithubDiscord