@kentcdodds/log-module
v1.1.1
Published
A CLI tool that imports a module and logs all its exports with syntax highlighting.
Downloads
1,159
Readme
@kentcdodds/log-module
A CLI tool that imports a module and logs all its exports with syntax highlighting.
Usage
npx @kentcdodds/log-module ./path/to/module.tsOr install globally:
npm install -g @kentcdodds/log-module
log-module ./path/to/module.tsFeatures
- Logs all exports with colorized output using
util.inspect - Awaits promises and indicates when a value was awaited
- Handles rejected promises gracefully with clean stack traces
- Syntax-highlighted code frames for syntax errors (via
@babel/code-frame) - Works with Node.js and Bun
Example
Given a module:
// example.ts
export const name = 'world'
export const config = { nested: { deep: true } }
export const getData = async () => ({ data: 'fetched' })
export const promise = Promise.resolve({ resolved: 'success' })
export const failing = Promise.reject(new Error('Oops'))Running log-module example.ts outputs:
name:
'world'
config:
{ nested: { deep: true } }
getData:
[AsyncFunction: getData]
promise (awaited):
{ resolved: 'success' }
failing (awaited):
rejected promise: Error: Oops
at /path/to/example.ts:5:40Syntax Errors
When a module has a syntax error, you get a highlighted code frame:
Failed to import module: Expected ',', got 'missing'
1 | export const broken = {
2 | foo: "bar"
> 3 | missing: "comma"
| ^ Expected ',', got 'missing'
4 | }License
MIT
