Nerds Pledge Magnanimously
    Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »

    level-blobspublic

    level-blobs

    Save binary blobs in level and stream then back. Similar to level-store but streams2 and with support for random access writes and reads

    npm install level-blobs
    

    build status dat

    browser support

    Usage

    var blobs = require('level-blobs');
    var level = require('level');
     
    var db = level('/tmp/my-blobs-db');
    var bl = blobs(db);
     
    // create a write stream 
    var ws = blobs.createWriteStream('my-file.txt');
     
    ws.on('finish', function() {
        // lets read the blob and pipe it to stdout 
        var rs = blobs.createReadStream('my-file.txt');
        rs.pipe(process.stdout);
    });
     
    ws.write('hello ');
    ws.write('world');
    ws.end();

    API

    blobs(db, opts)

    Create a new blobs instance. Options default to

    {
        blockSize: 65536, // byte size for each block of data stored 
        batch: 100        // batch at max 100 blocks when writing 
    }

    bl.createReadStream(name, opts)

    Create a read stream for name. Options default to

    {
        start: 0       // start reading from this byte offset 
        end: Infinity  // end at end-of-file or this offset (inclusive) 
    }

    bl.createWriteStream(name, opts)

    Create a write stream to name. Options default to

    {
        start: 0       // start writing at this offset 
                       // if append === true start defaults to end-of-file 
        append: false  // set to true if you want to append to the file 
                       // if not true the file will be truncated before writing 
    }

    bl.read(name, opts, cb)

    Create a read stream and buffer the stream into a single buffer that is passed to the callback. Options are passed to createReadStream.

    bl.write(name, data, opts, cb)

    Write data to name and call the callback when done. Options are passed to createWriteStream.

    bl.remove(name, cb)

    Remove name from the blob store

    License

    MIT

    install

    npm i level-blobs

    Downloadsweekly downloads

    17,829

    version

    0.1.7

    license

    none

    repository

    github.com

    last publish

    collaborators

    • avatar