1.0.0 • Published 4 years ago

dbrowser-sfs v1.0.0

Weekly downloads
4
License
MIT
Repository
github
Last release
4 years ago

dbrowser-sfs

An FS wrapper that keeps all access scoped to a specific folder.

npm install dbrowser-sfs

Usage

var ScopedFS = require('dbrowser-sfs')

var fs = new ScopedFS('/home/bob')
fs.readFile('/hello.txt', 'utf8', function (err, content) {
  // reads /home/bob/hello.txt
  console.log('world')
})

API

new ScopedFS(basepath)

Creates a scoped FS instance. All reads and writes will be restricted to basepath; any attempts to use .. to escape will return an error.

Wrapped FS methods

  • createReadStream
  • readFile
  • createWriteStream
  • writeFile
  • mkdir
  • symlink
  • access
  • exists
  • lstat
  • stat
  • readdir
  • unlink
  • rmdir

var stopwatch = sfs.watch(name, fn)

Create a recursive-watch instance.

sfs.setFilter(fn)

Set a filtering function which causes files & folders to be hidden if the function returns false. Attempts to read a filtered file will give a not found error (ENOENT) while attempts to write will give a permissions error (EPERM).