Skip to content

borisdiakur/n_

Repository files navigation

n_

Node.js REPL with lodash

Coverage Status

animated gif showing usage of n_

Why?

Sometimes we use the Node.js REPL interface to experiment with code. Wouldn’t it be great to have that interface with lodash required by default?

Installation

$ npm install -g n_

Usage

$ n_
n_ >

lodash is now attached to the REPL context as _, so just use it:

n_ > _.compact([0, 1, false, 2, '', 3]);
[ 1, 2, 3 ]
n_ >

FP mode

Use lodash's functional programming variant lodash/fp:

$ n_ --fp
n_ > _.map(function(v) { return v * 2; }, [1, 2, 3]);
[ 2, 4, 6 ]
n_ >

Strict mode

Enable strict mode:

$ n_ --use_strict
n_ >

Repl specificities

Commands

Commands which facilitate changing the lodash flavor can be executed with the .lodash repl command:

  • .lodash fp: switch to lodash/fp
  • .lodash vanilla: switch to vanilla lodash mode
  • .lodash reset: switch to initial lodash mode
  • .lodash swap: switch to the other lodash mode (vanilla/fp)
  • .lodash current: output current lodash flavor in use
  • .lodash version: output lodash version in use

Use .lodash help to view the available repl commands within the repl.

__ as last evaluated expression

The special character _ refers to the lodash instance, and cannot hold the value of the last expression. Use __ to access the last expression instead:

n_ > 10 + 2
12
n_ > 'number ' + __
'number 12'

Configuration options

Aside from --fp and --use_strict/--use-strict, other options are available either as CLI flags or via environment variables (with a trailing _N_).

Available cli options can be viewed with:

n_ --help

Enjoy! 🚀