Skip to content

Latest commit

 

History

History
37 lines (27 loc) · 1.22 KB

File metadata and controls

37 lines (27 loc) · 1.22 KB
description Native Node.js alternatives to the is-builtin-module package for checking built-in modules

Replacements for is-builtin-module

isBuiltin (native, since Node.js 16.x)

For determining if a module is built-in or not, you can use isBuiltin:

import { isBuiltin } from 'node:module' // [!code ++]
import isBuiltinModule from 'is-builtin-module' // [!code --]

isBuiltin('fs') // true [!code ++]
isBuiltinModule('fs') // true [!code --]

builtInModules (native, since Node.js 6.x and 15.x)

Before Node.js 16.x, isBuiltin was not available, so you need to implement your own check using builtinModules:

import { builtinModules } from 'node:module' // [!code ++]
import isBuiltinModule from 'is-builtin-module' // [!code --]

function isBuiltin(moduleName) { // [!code ++]
  const name = moduleName.startsWith('node:') // [!code ++]
    ? moduleName.slice(5) // [!code ++]
    : moduleName // [!code ++]
  return builtinModules.includes(name) // [!code ++]
} // [!code ++]

isBuiltin('fs') // true [!code ++]
isBuiltinModule('fs') // true [!code --]