Skip to content
This repository has been archived by the owner on Mar 10, 2019. It is now read-only.
/ level-blobs Public archive
forked from mafintosh/level-blobs

Save binary blobs in level and stream then back

License

Notifications You must be signed in to change notification settings

websecurify/level-blobs

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

44 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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

About

Save binary blobs in level and stream then back

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 100.0%