1.1.4 • Published 4 years ago
termlog v1.1.4
Termlog
Console log to terminal
What it does
termlog send the browser console log to your terminal
It also comes with a nodejs REPL so you can do some basic draft code
When to use it
- While you developing your front-end app and you have to switch back and forth between IDE and browser
- When you test app on mobile and need to check log. (See Debug on mobile)
How to use it?
There are 2 ways and it depends on your preferences
Recommended way
- Install the
termlogbinary :npm install --save-dev termlog( you also can install globally withnpm install -g termlog) - Start server
npx termlogortermlogif you install globally - Go to the entry file of your project (I.e: app.jsx for React or main.js for Vue)
- Insert these two lines:
import termlog from "termlog"
termlog()- You should now see log being streamed to your terminal
Note: with this approach you might want to remove two lines above in production
By default termlog will not run if it detects production mode using NODE_ENV, but you shouldn't rely on that
I don't want to add dependencies to my project
- Install the
termlogbinary :npm install -g termlog - Start server
termlog - Go to your browser and open the console window
- Copy code inside index.js file without the last export line into console
- Enter
termlog()into console - You should now see log being streamed to your terminal
Note: with this approach you have to do all steps 3-6 every-time you refresh your browser tab
Advanced options
With termlog command:
--out path: Save log to file--port port: Change server port--addr addr: Change server address--show levels: Select log levels to display (info | warning | error | debug). Multiple levels are seperated by,use
.show levelswhile the server running to select again
With termlog package:
termlog({
host: "localhost",
port: 3456
})
Debug on mobile
To be able to stream log from your app running on mobile you need to:
- Start term log with
0.0.0.0by runningnpx termlog --addr 0.0.0.0 - Find your private IP address
- MacOS: run
ipconfig getifaddr en0if you're on wifi and - Linux: run
hostname -I - Windows: run
ipconfigand find in the printed result. It should be under192.168.x.x
- MacOS: run
- Inside your project init tconfig with:
termlog({host: "YOUR_PRIVATE_IP"})
How it works
Termlog have 2 components:
- server.js - a websocket server to receive log message and display on terminal.
- index.js - termlog function to override default behavior of
consoleobject by capture arguments and send to websocket server
Future release
- Install using
<script/>tag - (Maybe) An extension to start termlog on browser so we don't have to install dependencies
- (If possible) Browser console REPL instead of nodejs REPL