Download MeshLink.
Place MeshLink.exe somewhere convenient, for example
C:\MeshLink.
Learn how to install MeshLink, connect your account, share a local website, test APIs and webhooks, protect links with a password, and understand DIRECT, EDGE, and TURN connectivity.
Windows x64 · MeshLink CLI v0.3.22 · SHA-256 checksum · Linux coming soon
MeshLink securely makes a web service running on your own computer available through a temporary HTTPS link.
Your application can remain bound to localhost. MeshLink connects outward to MeshLatch, so you do not need to manually open an inbound router port just to share a development service.
http://127.0.0.1:3000
MeshLink 3000
https://link.meshlatch.com/#MLK1.AAAA...
Place MeshLink.exe somewhere convenient, for example
C:\MeshLink.
Open your MeshLatch account, generate a single-use login code, then run:
MeshLink login ML-XXXXXXXX
If your development server is available at
http://127.0.0.1:3000, leave it running.
MeshLink 3000
MeshLink prints a private link. Open that link from another browser, phone, tablet, or computer.
Ctrl+C
MeshLink closes the running connection and releases the active link.
Run your React, Vite, Node, Django, Flask, or other local development server and open it from your phone or another PC.
MeshLink 3000Give a teammate or client temporary access to a development build while keeping the application on your computer.
MeshLink --target http://127.0.0.1:8080
If your API listens on localhost port 5000, MeshLink can expose that HTTP endpoint through the generated HTTPS URL.
MeshLink 5000Run your local webhook handler, start MeshLink on the same port, then use the generated HTTPS URL as the temporary webhook destination.
MeshLink 8080Access a local development dashboard from another device without changing its localhost binding.
MeshLink --target http://127.0.0.1:9090
MeshLink supports normal web requests as well as WebSockets and Server-Sent Events through the secure bridge.
MeshLink 3000 --debug
For an additional access check before the proxied application is shown, start MeshLink with:
MeshLink 3000 --password
MeshLink asks you to enter and confirm the password locally.
Password:
Confirm password:
Visitors must authenticate before reaching the local application. Do not send sensitive passwords together with the private MeshLink URL.
Use --expires when you want the link to expire automatically.
The value is in seconds and remains subject to your account plan limits.
MeshLink 3000 --expires 1800
MeshLink prefers a DIRECT WebRTC path. If DIRECT cannot be established or its transport becomes unhealthy, MeshLink can switch to its encrypted EDGE path. If EDGE is unavailable, TURN remains the final WebRTC relay fallback.
When peer-to-peer connectivity is healthy, debug output can show:
DIRECT WebRTC established.
selected path: DIRECT.
If DIRECT is unavailable or its transport is unhealthy, debug output can show:
EDGE tunnel ready.
selected path: EDGE.
If DIRECT and EDGE cannot be used, debug output can show:
TURN relay WebRTC established.
selected path: TURN relay.
EDGE carries MeshLink-encrypted transport data through MeshLatch edge infrastructure. TURN is contacted only as the final relay fallback when required. MeshLatch uses adaptive protection for sustained TURN traffic because TURN consumes relay infrastructure.
Camera, microphone, geolocation, and screen capture are delegated so the browser can display its normal permission prompt. MeshLatch does not grant these permissions automatically.
Application-owned Service Worker registration is not supported in MeshLink v0.3.22. MeshLink uses its own Service Worker as part of the secure per-link virtual-origin bridge.
MeshLink 3000
Share localhost port 3000.
MeshLink --target http://127.0.0.1:8080
Share an explicit loopback HTTP target.
MeshLink login ML-XXXXXXXX
Connect this device to your MeshLatch account using a single-use login code.
MeshLink account
Show the connected account and plan.
MeshLink logout
Remove the MeshLatch account credential from this device.
MeshLink 3000 --password
Password-protect the public MeshLink.
MeshLink 3000 --expires 3600
Request a one-hour lifetime, subject to your plan.
MeshLink 3000 --debug
Show detailed connection and diagnostic output.
MeshLink help
Show MeshLink's built-in help.
MeshLink --help
Show command-line options.
MeshLink --version
Show the installed MeshLink version.
Open your localhost URL directly on the host computer. MeshLink cannot expose an application that is not listening locally.
MeshLink 3000 --debug
Debug mode shows signaling, DIRECT/EDGE/TURN selection, WebRTC state, WebSocket activity, account heartbeats, and shutdown information.
Stop an existing MeshLink with Ctrl+C. You can also manage
your account or revoke active links from MeshLatch when necessary.
Generate a new login code from your account and run:
MeshLink login ML-XXXXXXXX
Ctrl+C stops the running MeshLink and releases its active allocation.Operational usage protection uses aggregate transport information such as byte counts, connection path, viewer counts, and timing. It is not designed to inspect the content of your local application.
Email support@meshlatch.com .
Please do not email passwords, login codes, API keys, private MeshLink URLs, or other secrets.