zheng 0d2df65677 webpack il y a 1 jour
..
lib 0d2df65677 webpack il y a 1 jour
LICENSE 0d2df65677 webpack il y a 1 jour
README.md 0d2df65677 webpack il y a 1 jour
package.json 0d2df65677 webpack il y a 1 jour

README.md

@jsonjoy.com/fs-node

In-memory filesystem with Node.js fs-compatible API.

Installation

npm install @jsonjoy.com/fs-node

Usage

import { Volume } from '@jsonjoy.com/fs-node';

const vol = new Volume();
vol.writeFileSync('/hello.txt', 'Hello, World!');
console.log(vol.readFileSync('/hello.txt', 'utf8')); // Hello, World!

Create filesystem from JSON

import { Volume } from '@jsonjoy.com/fs-node';

const vol = Volume.fromJSON({
  '/app/index.js': 'console.log("Hello");',
  '/app/package.json': '{"name": "app"}',
});

console.log(vol.readdirSync('/app')); // ['index.js', 'package.json']

API

The Volume class implements Node.js fs module's synchronous and callback APIs:

  • readFile, readFileSync
  • writeFile, writeFileSync
  • mkdir, mkdirSync
  • readdir, readdirSync
  • stat, statSync
  • unlink, unlinkSync
  • ... and many more

It also exposes a promises property for the Promise-based API:

const data = await vol.promises.readFile('/hello.txt', 'utf8');

License

Apache-2.0