require()
Loads a CommonJS module, with createRequire for use inside ESM.
Syntax
require(id) / createRequire(import.meta.url) Parameters
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | A module name, relative path, or absolute path to load. |
Returns
any — The resolved module exports.
Examples
// CommonJS
const { readFileSync } = require('node:fs');
const data = require('./config.json');
console.log(data.port);
Output
3000
// ESM: bridge to require for JSON or CJS-only packages
import { createRequire } from 'node:module';
const require = createRequire(import.meta.url);
const pkg = require('./package.json');
console.log(pkg.name);
Output
my-app
Notes
`require` is synchronous and CommonJS only. In ESM use `import`, or
`createRequire` for legacy CJS-only packages. Modern Node can also
`import` JSON with an import attribute. Avoid mixing the two systems
where possible.