| description | Native Node.js alternatives to the is-builtin-module package for checking built-in modules |
|---|
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 --]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 --]