Effortlessly stream client-side console.log messages to your server-side terminal via WebSocket. Debugging across environments has never been easier!
This is just a proof of concept and intended only for development purposes. Works only on localhost.
- Global override β Redirect all console methods (e.g.,
console.log,console.error) to the terminal without modifying your code. - Multiple integration options β Choose from three simple methods to integrate.
- Real-time streaming β Logs are instantly sent from the client to the server.
- Queueing β Ensures no logs are lost, even if the WebSocket connection isn't ready.
npm install -g console-link
console-link
# Or run directly without preinstallation
npx console-linkimport 'console-link'; // Now all console messages will be forwarded to the server.
<script src="https://www.unpkg.com/console-link"></script>
Simply copy the distributed code (available at https://www.unpkg.com/console-link) and paste it into your browser's DevTools console.
Need to configure a specific port for your WebSocket server? Start by specifying the port directly when running the command:
console-link [PORT_NUMBER]
Replace [PORT_NUMBER] with any available port you need. For example:
console-link 2137
This starts the WebSocket server on port 2137.
If you'd like to set a custom port interactively on the client side, simply use console-link/prompt instead of console-link. For example:
import 'console-link/prompt';
or include it in your HTML:
<script src="https://www.unpkg.com/console-link/dist/prompt.js"></script>
Note: Make sure to use the full URL (
https://www.unpkg.com/console-link/dist/prompt.js) as the shorter link (https://www.unpkg.com/console-link/prompt) doesn't work.
- The command in the terminal starts a WebSocket server.
- The client-side script establishes a WebSocket connection to the server and overrides
window.consoleusing a Proxy. - Logs are serialized using
flattedto handle circular references. - The server listens for incoming messages and prints them to the terminal.
console.log('App started'); console.warn('Something might be wrong'); console.error('An error occurred');
> console-link is running on ws://localhost:5001 > console-link client connected App started Something might be wrong An error occurred > console-link client disconnected