# node:fs

<!-- Generated from reports/manifest.json by `node ./scripts/api-docs.ts`.
     Do not edit this file. Run `pnpm run docs` to rebuild it.
     Node v26.7.0, commit 975a25d, 2026-08-27T21:51:46.116Z. -->

# `node:fs`

## Import

```js
import fs from "nstdlib/fs";
```

> [!NOTE]
> Its behavior matches Node.js. Details: over a `node:vfs` memory mount. Paths outside a mount still throw.

## Runtime support

| Where it runs | Status | Export coverage | Details |
| ------------- | ------ | --------------- | ------- |
| **nstd** | ✅ works | – | Native tests match Node.js: fs, fs-watch. |
| **Browser** | ❔ not tested | 100% of Node.js | It imports with the small process shim. 102/102 Node.js exports are available. No module-specific behavior test ran. |
| **Node.js (host)** | ✅ works | 100% of Node.js | 104/104 exports. |

## Exports (104 of 104)

Each cell shows what happens when code reads an export:

- ✅ Available through every import style. A named error also counts.
- ⚠️ Available through only some import styles.
- ❔ The export exists but has no value.
- ❌ The export does not exist.
- – This environment was not measured.

<details>
<summary>Show all 104 exports</summary>

| Export | Node.js | nstdlib | browser |
| ------ | ------- | ------- | ------- |
| `Dir` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `Dirent` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `FileReadStream` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `FileWriteStream` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `ReadStream` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `Stats` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `Utf8Stream` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `WriteStream` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `_toUnixTimestamp` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `access` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `accessSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `appendFile` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `appendFileSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `chmod` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `chmodSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `chown` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `chownSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `close` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `closeSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `constants` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `copyFile` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `copyFileSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `cp` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `cpSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `createReadStream` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `createWriteStream` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `exists` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `existsSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `fchmod` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `fchmodSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `fchown` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `fchownSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `fdatasync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `fdatasyncSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `fstat` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `fstatSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `fsync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `fsyncSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `ftruncate` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `ftruncateSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `futimes` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `futimesSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `glob` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `globSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `lchmod` | <span title="Undefined" aria-label="Undefined">❔</span> | <span title="Undefined" aria-label="Undefined">❔</span> | <span title="Missing" aria-label="Missing">❌</span> |
| `lchmodSync` | <span title="Undefined" aria-label="Undefined">❔</span> | <span title="Undefined" aria-label="Undefined">❔</span> | <span title="Missing" aria-label="Missing">❌</span> |
| `lchown` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `lchownSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `link` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `linkSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `lstat` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `lstatSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `lutimes` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `lutimesSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `mkdir` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `mkdirSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `mkdtemp` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `mkdtempDisposableSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `mkdtempSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `open` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `openAsBlob` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `openSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `opendir` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `opendirSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `promises` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `read` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `readFile` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `readFileSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `readSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `readdir` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `readdirSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `readlink` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `readlinkSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `readv` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `readvSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `realpath` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `realpathSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `rename` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `renameSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `rm` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `rmSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `rmdir` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `rmdirSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `stat` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `statSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `statfs` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `statfsSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `symlink` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `symlinkSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `truncate` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `truncateSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `unlink` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `unlinkSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `unwatchFile` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `utimes` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `utimesSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `watch` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `watchFile` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `write` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `writeFile` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `writeFileSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `writeSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `writev` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |
| `writevSync` | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> | <span title="Available" aria-label="Available">✅</span> |

</details>
