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 and n2n/supernode.exe; on Windows Super N2N starts them 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 automatically selects an available TAP-Windows adapter before starting Edge and reports a clear error when none is installed. The optional TAP device field is only needed to select a specific existing adapter. Connection settings, including advanced settings, 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