NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #1277 most downloaded on npm
In-memory file-system with Node's fs API.
Last release today
17 Sep 2026
Ships fairly regularly
a new release about every 2 weeks
Nearly every release is documented
notes for 57 of the last 60 stable releases
2 versions withdrawn
withdrawn after publishing
11 years old
265 releases · first in 2015
replace sonic-forest with tree-dump
One column per quarter.
🐛 use latest json-pack implementation
Nothing published for this version
don't include filename in path when calling readdir with withFileTypes: true
fix handle paths in FSA entries iterator
Nothing published for this version
make json-joy and thingies dependencies optional
accept file names beginning with a period
remove tests from published package
## 4.7.5 (2024-02-17) ### Bug Fixes * inline thingies dependency
## 4.7.5-next.1 (2024-02-17) ### Bug Fixes * inline thingies
## 4.7.4 (2024-02-17) ### Bug Fixes * inline hyperdyperid
## 4.7.3 (2024-02-17) ### Bug Fixes * inline json-joy dependency
## 4.7.3-next.1 (2024-02-17) ### Bug Fixes * inline json-joy dependency
## 4.7.2 (2024-02-17) ### Bug Fixes * make tslib a direct dependency
use internal buffer instead of global Buffer
deps: update dependency json-joy to v11
queueMicrotask implementation (45d1784)toJSON now accepts the asBuffer parameter (#952) (91a3742)add queueMicrotask implementation
volume: fromJSON now accepts Buffer as volume content
# 4.3.0 (2023-09-15) ### Features * add support for O_SYMLINK
add missing nanosecond-precision properties to Stats
support directories named __proto__ (#945) (8d92a0b), closes #938
don't error when watched directory gets renamed
…are in preview, their public interface may have breaking changes even across minor releases.
memfs v4 has been released, install 4.2.0 NPM package.
memfs added adapters for File System Access (FAS) API, which is a file system API available in browsers. FSA can write to a real user folder, which user picks; or without any permissions can write to a virtual file system, called OPFS (Origin Private File System). memfs implements adapters, which:
fs-like API out of the FSA API.
fs methods is also available using a WebWorker.memfs can provide FSA API on top of any fs-like file system.fs changes
fs bugs were fixed.fs were improved.mkdirp and mkdripSync were removed, they were deprecated before. (You can pass the "recursive" flag to mkdir and mkdirSync, instead.)fs utilities now live in the /src/node folder.this object, just like in native fs module.crudfs and casfs
crudfs implementation on top of Node fs was added.crudfs implementation on top of File System Access API was added.casfs implementation on top of crudfs was added.print utility was added which allows to recursively print a directory tree to terminal.snapshot utility was added which allows to create recursive binary snapshots of folders and then load them back into some folder./demo folder now contains multiple Webpack demos.tslib is now included as peer dependency, instead of TypeScript helpers being emitted into distributable.es2017, instead of previously es5.BigInt shim is no longer shipped, memfs will rely on the BigInt provided by the JavaScript environment. You can shim that global, if necessary.fs-monkey dependency was removed.experimental, which means those APIs are in preview, their public interface may have breaking changes even across minor releases.next branch was tested, which deploys pre-releases.* 🐛 add support for unknown nodes (77786f1)
* 🐛 allow readin into various kinds of buffers (361812d)
* 🐛 allow readin into various kinds of buffers (e9c70e9)
* 🐛 allow to seek in file (c04895b)
* 🐛 allow to seek in file (b363689)
* 🐛 correctly handle directory paths (ea909e8)
* 🐛 do not allow empty children names (f014fd8)
* 🐛 do not allow empty children names (43da1d6)
* 🐛 handle root folder better (89bbffd)
* 🐛 handle root folder better (76de780)
* 🐛 improve file opening and closing logic (403c271)
* 🐛 throw "ENOENT" and "ENOTDIR" when folder or file 404 (5de4faa)
* 🐛 throw "ENOENT" and "ENOTDIR" when folder or file 404 (ddd5d56)
Full Changelog: https://github.com/streamich/memfs/compare/v3.6.0...v4.2.0
🐛 allow readin into various kinds of buffers
🐛 add support for unknown nodes
🎸 implement toTreeSync() method
🐛 correctly handle directory paths
# 4.1.0-next.2 (2023-06-21) ### Features * 🎸 add integrity check on read (710eb2f) * 🎸 implement CAS storage
🐛 allow readin into various kinds of buffers
🧨 no breaking changes in this commit, but bumping to get this to v4 in NPM
🎸 node fs and volume improvements
bump fs-monkey minimum version for rm support
correctly output filename when watching files
ensure metadata is updated correctly so that watchFile is correctly triggered
support the recursive option for fs.watch()
set path on errors when possible
## 3.4.12 (2022-11-19) ### Bug Fixes * mkdir return value
return / when calling realpathSync with / (#867) (8d8e8d1), closes #863
support calling chmod on a directory (#870) (7c5999c), closes #558
support calling utimes on a directory (#866) (301f2d1), closes #391
extend with null bytes when calling truncate with a len greater than the current file size
dont patch getuid and getgid on process anymore
## 3.4.6 (2022-06-18) ### Bug Fixes * loosen dependency constraints
throw EEXIST when opening file that already exists with 'wx' flag
allow Uint8Arrays to be passed to FsWriteStream
ensure js file is copied to expected place
set closed property correct on Node 18
recursively sync children steps to fix rename
support the throwIfNoEntry option
🎸 add .rmSync(), .rm(), and .promises.rm() methods
## 3.2.4 (2021-09-02) ### Bug Fixes * 🐛 use globalThis defensively
global and timers this arg in browser
deps: update dependency fs-monkey to v1.0.2
add The Unlicense license SDPX in package.json
'fromJSON()' did not consider cwd when creating directories
deps: update dependency fs-monkey to v1.0.1
Your coding agent can read these notes before it upgrades. Set up the MCP server →