Skip to content

streamich/unionfs

Repository files navigation

unionfs

Creates a union of multiple fs file systems.

npm install --save unionfs 

This module allows you to use multiple objects that have file system fs API at the same time.

import { ufs } from 'unionfs'; import { fs as fs1 } from 'memfs'; import * as fs2 from 'fs'; ufs.use(fs1).use(fs2); ufs.readFileSync(/* ... */);

Use this module with memfs and linkfs. memfs allows you to create virtual in-memory file system. linkfs allows you to redirect fs paths.

You can also use other fs-like objects.

import * as fs from 'fs'; import { Volume } from 'memfs'; import * as MemoryFileSystem from 'memory-fs'; import { ufs } from 'unionfs'; const vol1 = Volume.fromJSON({ '/memfs-1': '1' }); const vol2 = Volume.fromJSON({ '/memfs-2': '2' }); const memoryFs = new MemoryFileSystem(); memoryFs.writeFileSync('/memory-fs', '3'); ufs.use(fs).use(vol1).use(vol2).use(memoryFs); console.log(ufs.readFileSync('/memfs-1', 'utf8')); // 1 console.log(ufs.readFileSync('/memfs-2', 'utf8')); // 2 console.log(ufs.readFileSync('/memory-fs', 'utf8')); // 3

You can create a Union instance manually:

import { Union } from 'unionfs'; var ufs1 = new Union(); ufs1.use(fs).use(vol); var ufs2 = new Union(); ufs2.use(fs).use(/*...*/);

License

Unlicense - public domain.

About

Use multiple fs modules at once

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors