safe-fs-blob-store

    1.0.6 • Public • Published

    safe-fs-blob-store

    blob-store-compatible

    filesystem blob store with atomic writes and high file limits on Windows

    This module exposes the same API as fs-blob-store, but with two additional features:

    1. File writes are atomic. This is done by maintaining a "staging" area in the blob store that files are written to, and then renamed (using an atomic syscall) to the destination filename upon completion.
    2. Window's NTFS file system has a limit of ~4 billion files in a directory. FAT32 has a limit of ~65,000. This module transparently manages subdirectories from the prefixes of given keys to avoid hitting this limit as quickly.
    3. Adds a list() method which lists the key names of all the files in the media store.

    Usage

    var fs = require('safe-fs-blob-store')
    var blobs = fs('some-directory')
     
    var ws = blobs.createWriteStream({
      key: 'some/path/file.txt'
    })
     
    ws.end('hello world\n')
     
    ws.on('finish', function () {
      var rs = blobs.createReadStream({
        key: 'some/path/file.txt'
      })
     
      rs.pipe(process.stdout)
    })

    API

    See https://github.com/maxogden/abstract-blob-store and in addition:

    store.list(cb)

    Calls cb with err, keys, where keys is an array of string key names of the files in the store.

    License

    ISC

    Install

    npm i safe-fs-blob-store

    DownloadsWeekly Downloads

    200

    Version

    1.0.6

    License

    ISC

    Unpacked Size

    22.2 kB

    Total Files

    11

    Last publish

    Collaborators

    • andrew_chou
    • substack
    • karissa
    • digidem-admin
    • gmaclennan
    • noffle