npm stats
  • Search
  • About
  • Repo
  • Sponsor
  • more
    • Search
    • About
    • Repo
    • Sponsor

Made by Antonio Ramirez

@kentcdodds/log-module

1.1.1

@kentcdodds

npmSnykSocket
Downloads:25
$ npm install @kentcdodds/log-module
DailyWeeklyMonthlyYearly

@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.ts

Or install globally:

npm install -g @kentcdodds/log-module
log-module ./path/to/module.ts

Features

  • 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:40

Syntax 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