Browser Extension Setup
How to integrate NeXDM with Chrome, Microsoft Edge, and Chromium browsers.
1. Architectural Architecture: The "Dumb Extension" Paradigm
Unlike traditional browser extensions that inject heavy DOM-sniffing scripts, execute invasive network monkey-patching, or inject dynamic DLLs into third-party processes, the NeXDM companion extension adheres strictly to a lightweight, Manifest V3 "Dumb Extension" architecture.
The extension never performs client-side DOM scraping, ad injection, or background telemetry harvesting. Its sole responsibility is to act as an authenticated, low-latency bridge between Chromium's internal download subsystem and NeXDM's native Rust execution daemon.
2. The Native Messaging IPC Protocol Specification
Communication between the browser extension and the desktop application relies on Chromium's native inter-process communication protocol: Native Messaging.
When a user initiates a download, the extension packages the download metadata—including the target URL, filename suggestion, MIME content-type, active HTTP session cookies, and Referer headers—into a JSON payload. It transmits this payload to the NeXDM desktop binary across standard input (stdin) using a 32-bit length-prefixed framing format:
- Header: A 4-byte (32-bit) unsigned integer in native byte order specifying the length of the JSON string.
- Payload: The UTF-8 encoded JSON string containing the transfer payload parameters.
This binary stdio channel guarantees sub-millisecond dispatch times with zero network socket exposure, preventing unauthorized external access from local network interfaces or port scanners.
3. Windows Registry Discovery Configuration
Chromium browsers locate the native binary via registry keys registered under the current user's profile hive. During setup, NeXDM registers the native host manifest at:
This registry key points directly to a local JSON host manifest file on your storage volume:
{
"name": "com.nexdm.native_host",
"description": "NeXDM Native Messaging IPC Host",
"path": "C:\\Program Files\\NeXDM\\nexdm_native_host.exe",
"type": "stdio",
"allowed_origins": [
"chrome-extension://kcdkmbakbgcgaikjcdhllpccpeggmmpm/"
]
}
4. Step-by-Step Browser Installation Walkthrough
Step 1: Install from the Chrome Web Store
Navigate to the official Chrome Web Store listing in Google Chrome, Microsoft Edge, Brave, or Vivaldi:
Note for Brave & Edge users: If prompted, click "Allow extensions from other stores" to enable 1-click installation from the Chrome Web Store.
Step 2: Verify Initial IPC Handshake
Launch the NeXDM desktop app. Click the extension icon in your browser toolbar; the status badge will immediately illuminate green, indicating "Connected to NeXDM Core".
5. Core Extension Features & Interception Logic
- Automatic File Extension Interception: Clicking direct download links for files such as
.zip,.iso,.exe,.tar.gz,.msi, or media containers immediately dispatches the transfer into NeXDM, canceling the browser's slow single-thread download. - Context Menu Download Capture: Right-click any hyperlink, image, or audio/video element and select "Download with NeXDM" to force accelerated capture.
- Full Authentication & Cookie Forwarding: When downloading from password-protected cloud portals or private member repositories, NeXDM transmits session cookies and custom authentication bearer tokens across the Native Messaging bridge, guaranteeing downloads never fail with
401 Unauthorizedor403 Forbiddenerrors. - File Type Customization: Customize which file extensions trigger automatic interception or specify custom domain bypass lists directly within the extension's Options page.
6. Troubleshooting Common Handshake Anomalies
If the extension displays a "Host Not Connected" notification:
- Verify that the NeXDM desktop application has been launched at least once on your workstation to register the registry key.
- Check that third-party antivirus software has not blocked registry modifications under
HKCU\Software\Google\Chrome\NativeMessagingHosts. - In the desktop application, navigate to Settings → Integration and click "Re-register Native Host" to restore default registry mappings.
Next Step: Optimize Network Throughput
Now that browser integration is active, learn how to configure multi-socket thread limits and TCP window parameters in our optimization guide:
Read the Speed Optimization Guide →