node package manager



A mock abstract-leveldown implementation that queues operations while a real abstract-leveldown instance is being opened.

level badge npm Node version Build Status david JavaScript Style Guide npm

deferred-leveldown implements the basic abstract-leveldown API so it can be used as a drop-in replacement where leveldown is needed.

put(), get(), del() and batch() operations are all queued and kept in memory until the abstract-leveldown-compatible object has been opened through deferred-leveldown's open() method.

batch() operations will all be replayed as the array form. Chained-batch operations are converted before being stored.

const deferred  = require('deferred-leveldown')
const leveldown = require('leveldown')
const db = deferred(leveldown('location'))
db.put('foo', 'bar', function (err) {
}) (err) {
  // ...

If you are upgrading: please see


deferred-leveldown is an OPEN Open Source Project. This means that:

Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project.

See the file for more details.


deferred-leveldown is only possible due to the excellent work of the following contributors:

Rod VaggGitHub/rvaggTwitter/@rvagg
John ChesleyGitHub/cheslesTwitter/@chesles
Jake VerbatenGitHub/raynosTwitter/@raynos2
Dominic TarrGitHub/dominictarrTwitter/@dominictarr
Max OgdenGitHub/maxogdenTwitter/@maxogden
Lars-Magnus SkogGitHub/ralphtheninjaTwitter/@ralphtheninja
David BjörklundGitHub/keslaTwitter/@david_bjorklund
Julian GruberGitHub/juliangruberTwitter/@juliangruber
Paolo FragomeniGitHub/hij1nxTwitter/@hij1nx
Anton WhalleyGitHub/No9Twitter/@antonwhalley
Matteo CollinaGitHub/mcollinaTwitter/@matteocollina
Pedro TeixeiraGitHub/pgteTwitter/@pgte
James HallidayGitHub/substackTwitter/@substack


Copyright (c) 2013-2018 deferred-leveldown contributors (listed above).

deferred-leveldown is licensed under the MIT license. All rights not explicitly granted in the MIT license are reserved. See the included file for more details.