Super N2N

Super N2N is a Tauri 2 desktop control plane. Its pinned n2n dependency is stored as the third_party/n2n Git submodule.

Reproducible Windows build

Clone the project together with its fixed n2n source revision:

git clone --recurse-submodules https://git.code.cq.cn/chun_qiu/supern2n.git
cd supern2n

The only supported portable-package build entry point is:

npm run build:portable

Or call the same script directly when a clean output is required:

powershell -NoProfile -ExecutionPolicy Bypass -File scripts/build.ps1 -Clean

The script initializes submodules, compiles n2n, installs frontend dependencies with npm ci, runs Rust tests, creates the Tauri portable package, and writes a SHA-256 checksum beside it. Outputs are placed in release/.

The Windows build host needs Node.js, Rust with the MSVC toolchain, Git for Windows (Bash), and MinGW-w64 tools providing gcc, windres, and mingw32-make.

Frontend development

Install dependencies:

npm install

Start the Vite preview:

npm run dev

The current preview URL is http://127.0.0.1:1420/.

Native desktop development

Install dependencies, then start the Tauri development window:

npm install
npm run tauri dev

The portable build creates release/super-n2n-portable.zip. It contains n2n/edge.exe, n2n/supernode.exe, and the official TAP-Windows installer in drivers/tap-windows-9.24.7-I601-Win10.exe; on Windows Super N2N starts the n2n programs with the relative paths ./n2n/edge.exe and ./n2n/supernode.exe.

Windows TAP requirement

N2N uses an installed TAP-Windows virtual adapter; it does not create a new adapter itself. Super N2N checks for an adapter on first launch, offers the bundled installer when one is missing, and automatically selects an available adapter before starting Edge. The optional TAP device field is only needed to select a specific existing adapter. Connection settings, including advanced settings, are stored beside super-n2n.exe in super-n2n.config.json and are restored on the next application launch.

Gitea Actions

.gitea/workflows/build-windows.yml runs when a Release is published and uploads the portable zip plus its checksum as workflow artifacts. Configure a dedicated Gitea runner with the windows-host label and the Windows build prerequisites above. It can also be run manually from the Actions page.

The native command layer can start and stop edge/supernode processes, query the n2n UDP management API, run ping and TCPing checks, and inspect the local firewall state. Browser preview does not fabricate native process, management, or network-check results.

Included UI

  • Overview of managed services, management API client records, P2P/relay counts, and management request latency
  • Visual Edge and Supernode option editors mapped to n2n command flags
  • Auto-IP/DHCP client table populated from the n2n management API
  • Topology view populated from the currently configured services and returned client records
  • Ping, TCPing, and local firewall checks
  • Process, management API, and tool event log
S
Description
another n2n client. made with Tarui (webview2)
Readme
1,004 KiB
1.2
Latest
2026-09-02 04:48:50 +08:00
Languages
Rust 37.1%
JavaScript 31.5%
CSS 22.8%
PowerShell 7.8%
HTML 0.6%
Other 0.2%