TabSync CLI lets you instantly share open browser tabs between your desktop and mobile - all over your local Wi-Fi, without the cloud. Run it as a simple CLI, scan a QR code, and you’re synced.
Download extension and alternative of CLI (Windows,Linux)
|
|
Sources extension and tabsync-desktop
# Install globally (recommended)
npm install -g tabsync-cli
# Start the local server
tabsyncOnce started, the CLI will:
- Detect your local IP address
- Launch a lightweight Express + WebSocket server
- Show a QR code - scan it on your mobile to open the TabSync page
- The server (server.js) keeps track of all connected devices and their open tabs.
- Each device (desktop or mobile) connects via WebSocket and automatically syncs tab URLs.
- When a device goes offline for more than 5 minutes, it’s cleaned up automatically and disappears from the screen (may require refresh).
- You can also add URLs manually using the input box on the web page.
Usage: tabsync [options]
Options:
--port <num> Use a specific port instead of a random one
--no-qr Skip showing QR code
--env <path> Load environment variables from a custom file
--version, --v Show the current version
--help Show this help message
Examples:
tabsync
tabsync --port 3210
tabsync --env .env
tabsync --no-qr --port 8080Open your browser at:
http://<your-local-ip>:portYou’ll see:
- A list of devices connected to your TabSync session
- Their open tabs as clickable links
- A field to add new URLs to sync instantly
The UI updates in real time whenever devices connect, disconnect (may require refresh), or share new tabs.
- server.js -> Express + WebSocket server handling connections and sync
- index.html -> Frontend UI that receives live updates and renders devices/tabs
- CLI script -> Spawns the server, detects IP, and shows QR code for easy connection
Inactive devices (no activity for 5 minutes) are automatically removed, and all clients update instantly (may require refresh).
Press Ctrl + C in the terminal to shut it down gracefully.
What's fixed in v1.1.1:
- Use absolute static directory
- Detect HTML with no title (more rigid)
- Only treat HTTP failures as “Error”
- Above, fixed the port issue, now ports reflect immediately
For all the important changelog vist Changelog
Contributions are always welcome!
See Contributing for ways to get started.
Please adhere to this project's Code Of Conduct.
Support the developers for this project to live long.For issues, open a new issue or use discussion.
This project is licensed under the MIT License
