normalize-path(latest: 3.0.0) Normalize slashes in a file path to be posix/unix-like forward slashes. Also condenses repeat slashes to a single slash and removes and trailing slashes, unless disabled.
braces(latest: 3.0.2) Bash-like brace expansion, implemented in JavaScript. Safer than other brace expansion libs, with complete support for the Bash 4.3 braces specification, without sacrificing speed.
is-extglob(latest: 2.1.1) Returns true if a string has an extglob.
fill-range(latest: 7.0.1) Fill in a range of numbers or letters, optionally passing an increment or `step` to use, or create a regex-compatible range with `options.toRegex`
to-regex-range(latest: 5.0.1) Pass two numbers, get a regex-compatible source string for matching ranges. Validated against more than 2.78 million test assertions.
is-number(latest: 7.0.0) Returns true if a number or string value is a finite number. Useful for regex matches, parsing, user input, etc.
clone-deep(latest: 4.0.1) Recursively (deep) clone JavaScript native types, like Object, Array, RegExp, Date as well as primitives.
kind-of(latest: 6.0.3) Get the native type of a value.
shallow-clone(latest: 3.0.1) Creates a shallow clone of any JavaScript value.
is-windows(latest: 1.0.2) Returns true if the platform is windows. UMD module, works with node.js, commonjs, browser, AMD, electron, etc.
arr-diff(latest: 4.0.0) Returns an array with only the unique values from the first array, by excluding all values from additional arrays using strict equality for comparisons.
array-unique(latest: 0.3.2) Remove duplicate values from an array. Fastest ES5 implementation.
define-property(latest: 2.0.2) Define a non-enumerable property on an object. Uses Reflect.defineProperty when available, otherwise Object.defineProperty.
split-string(latest: 3.1.0) Split a string on a character except when the character is escaped.
assign-symbols(latest: 1.0.0) Assign the enumerable es6 Symbol properties from an object (or objects) to the first object passed on the arguments. Can be used as a supplement to other extend, assign or merge methods as a polyfill for the Symbols part of the es6 Object.assign method.
is-extendable(latest: 1.0.1) Returns true if a value is a plain object, array or function.
isobject(latest: 4.0.0) Returns true if the value is an object and not an array or null.
repeat-string(latest: 1.6.1) Repeat the given string n times. Fastest implementation for repeating a string.
cache-base(latest: 1.0.1) Basic object cache with `get`, `set`, `del`, and `has` methods for node.js/javascript projects.
class-utils(latest: 0.3.6) Utils for working with JavaScript classes and prototype methods.
collection-visit(latest: 1.0.0) Visit a method over the items in an object, or map visit over the objects in an array.
for-in(latest: 1.0.2) Iterate over the own and inherited enumerable properties of an object, and return an object with properties that evaluate to true from the callback. Exit early by returning `false`. JavaScript/Node.js
map-visit(latest: 1.0.0) Map `visit` over an array of objects.
pretty-time(latest: 1.1.0) Easily format the time from node.js `process.hrtime`. Works with timescales ranging from weeks to nanoseconds.
word-wrap(latest: 1.2.3) Wrap words to a specified length.
array-sort(latest: 1.0.0) Fast and powerful array sorting. Sort an array of objects by one or more properties. Any number of nested properties or custom comparison functions may be used.
collection-map(latest: 1.0.0) Returns an array of mapped values from an array or object.
array-slice(latest: 1.1.0) Array-slice method. Slices `array` from the `start` index up to, but not including, the `end` index.
for-own(latest: 1.0.0) Iterate over the own enumerable properties of an object, and return an object with properties that evaluate to true from the callback. Exit early by returning `false`. JavaScript/Node.js.
default-compare(latest: 1.0.0) Basic sort algorithm that has similar behavior to Array.prototype.sort for null and undefined, but also allows sorting by an object property.
object.map(latest: 1.0.1) Similar to map for arrays, this creates a new object by calling the callback on each property of the original object.
homedir-polyfill(latest: 1.0.3) Node.js os.homedir polyfill for older versions of node.js.
is-absolute(latest: 1.0.0) Returns true if a file path is absolute. Does not rely on the path module and can be used as a polyfill for node.js native `path.isAbolute`.
array-initial(latest: 1.1.0) Get all but the last element or last n elements of an array.
to-absolute-glob(latest: 2.0.2) Make a glob pattern absolute, ensuring that negative globs and patterns with trailing slashes are correctly handled.
append-buffer(latest: 1.0.2) Append a buffer to another buffer ensuring to preserve line ending characters.
filename-regex(latest: 2.0.1) Regular expression for matching file names, with or without extension.
object.omit(latest: 2.0.1) Return a copy of an object excluding the given key, or array of keys. Also accepts an optional filter function as the last argument.
regex-cache(latest: 0.4.4) Memoize the results of a call to the RegExp constructor, avoiding repetitious runtime compilation of the same string and options, resulting in surprising performance improvements.
detect-file(latest: 1.0.0) Detects if a file exists and returns the resolved filepath.
resolve-dir(latest: 1.0.1) Resolve a directory that is either local, global or in the user's home directory.
expand-tilde(latest: 2.0.2) Bash-like tilde expansion for node.js. Expands a leading tilde in a file path to the user home directory, or `~+` to the cwd.
parse-filepath(latest: 1.0.2) Pollyfill for node.js `path.parse`, parses a filepath into an object.
parse-passwd(latest: 1.0.0) Parse a passwd file into a list of users.
is-relative(latest: 1.0.0) Returns `true` if the path appears to be relative.
expand-range(latest: 1.8.2) Fast, bash-like range expansion. Expand a range of numbers or letters, uppercase or lowercase. See the benchmarks. Used by micromatch.
glob-base(latest: 0.3.0) Returns an object with the (non-glob) base path and the actual pattern.
is-dotfile(latest: 1.0.3) Return true if a file path is (or has) a dotfile. Returns false if the path is a dot directory.
is-equal-shallow(latest: 0.1.3) Does a shallow comparison of two objects, returning false if the keys or values differ.
randomatic(latest: 3.1.1) Generate randomized strings of a specified length using simple character sequences. The original generate-password.
global-prefix(latest: 3.0.0) Get the npm global path prefix.
sort-object(latest: 0.3.2) Sort the keys in an object.
center-align(latest: 0.1.3) Center-align the text in a string.
right-align(latest: 0.1.3) Right-align the text in a string.
align-text(latest: 0.1.4) Align the text in a string.
time-stamp(latest: 2.2.0) Get a formatted timestamp.
condense-newlines(latest: 0.2.1) Replace extraneous newlines with a single newline, or pass a specified number of newlines to use.
prompt-base(latest: 5.0.0) Base prompt module used for creating custom prompts.
window-size(latest: 1.1.1) Reliable way to get the height and width of terminal/console, since it's not calculated or updated the same way on all platforms, environments and node.js versions.
lazy-cache(latest: 2.0.2) Cache requires to be lazy-loaded when needed.
ansi-bgblack(latest: 0.1.1) The color bgblack, in ansi.
ansi-bgblue(latest: 0.1.1) The color bgblue, in ansi.
ansi-bgcyan(latest: 0.1.1) The color bgcyan, in ansi.
ansi-bggreen(latest: 0.1.1) The color bggreen, in ansi.
ansi-bgmagenta(latest: 0.1.1) The color bgmagenta, in ansi.
ansi-bgwhite(latest: 0.1.1) The color bgwhite, in ansi.
ansi-bgyellow(latest: 0.1.1) The color bgyellow, in ansi.
ansi-black(latest: 0.1.1) The color black, in ansi.
ansi-underline(latest: 0.1.1) The color underline, in ansi.
ansi-white(latest: 0.1.1) The color white, in ansi.
set-getter(latest: 0.1.0) Create nested getter properties and any intermediary dot notation (`'a.b.c'`) paths
npm-api(latest: 1.0.0) Base class for retrieving data from the npm registry.
download-stats(latest: 0.3.4) Get and calculate npm download stats for npm modules.
paged-request(latest: 2.0.1) Simplified requests for paged (paginated) content.
get-value(latest: 3.0.1) Use property paths like 'a.b.c' to get a nested value from an object. Even works when keys have dots in them (no other dot-prop library can do this!).
is-valid-path(latest: 0.1.1) Returns true if a file path does not contain any invalid characters.
is-invalid-path(latest: 1.0.2) Returns true if a windows file path has invalid characters.
unixify(latest: 1.0.0) Convert Windows file paths to unix paths.
longest(latest: 2.0.1) Get the longest item in an array.
enquirer(latest: 2.3.6) Stylish, intuitive and user-friendly prompt system. Fast and lightweight enough for small projects, powerful and extensible enough for the most advanced use cases.
write(latest: 2.0.0) Write data to a file, replacing the file if it already exists and creating any intermediate directories if they don't already exist. Thin wrapper around node's native fs methods.
glob-parent(latest: 6.0.2) Extract the non-magic parent path from a glob string.
is-glob(latest: 4.0.3) Returns `true` if the given string looks like a glob pattern or an extglob pattern. This makes it easy to create code that only uses external modules like node-glob when necessary, resulting in much faster code execution and initialization time, and a bet
picomatch(latest: 2.3.1) Blazing fast and accurate glob matcher written in JavaScript, with no dependencies and full support for standard and extended Bash glob features, including braces, extglobs, POSIX brackets, and regular expressions.
merge-deep(latest: 3.0.3) Recursively merge values in a javascript object.
micromatch(latest: 4.0.5) Glob matching for javascript/node.js. A replacement and faster alternative to minimatch and multimatch.
dateformat(latest: 5.0.3) A node.js package for Steven Levithan's excellent dateFormat() function.
gray-matter(latest: 4.0.3) Parse front-matter from a string or file. Fast, reliable and easy to use. Parses YAML front matter by default, but also has support for YAML, JSON, TOML or Coffee Front-Matter, with options to set custom delimiters. Used by metalsmith, assemble, verb and
set-value(latest: 4.1.0) Set nested properties on an object using dot notation.
is-primitive(latest: 3.0.1) Returns `true` if the value is a primitive.
ansi-colors(latest: 4.1.3) Easily add ANSI colors to your text and symbols in the terminal. A faster drop-in replacement for chalk, kleur and turbocolor (without the dependencies and rendering bugs).