Skip to content
An open list of awesome Level modules and resources.
Branch: master
Clone or download

Awesome Level

An open list of awesome Level modules and resources. Add yours!

level badge Backers on Open Collective Sponsors on Open Collective

Table of Contents

Click to expand


Convenience modules that bundle a store with levelup and encoding-down.

Name Compatibility Dependencies Description
level levelup dependencies Bundle for leveldown and level-js.
Main entry point for beginners.
level-mem levelup dependencies Bundle for memdown.
level-rocksdb levelup dependencies Bundle for rocksdb.
level-hyper levelup dependencies Bundle for leveldown-hyper.
level-indexed levelup dependencies Bundle for indexeddown.
Alternative to level.


Name Dependencies Description
levelup dependencies The glue that holds everything together.
Use this when you need a custom or swappable store.
abstract-leveldown dependencies An abstract prototype matching the leveldown API.
Use this to implement your own store.
level-packager dependencies Package helper to export a bundle.
Use this to create a new level-* bundle.


Modules that implement abstract-leveldown as storage for levelup.

Name Compatibility Dependencies Type
leveldown abstract-leveldown dependencies LevelDB
memdown abstract-leveldown dependencies In-memory RBTree
level-js abstract-leveldown dependencies IndexedDB
rocksdb abstract-leveldown dependencies RocksDB
leveldown-hyper abstract-leveldown dependencies HyperLevelDB
medeadown abstract-leveldown dependencies medea
jsondown abstract-leveldown dependencies JSON on disk
asyncstorage-down abstract-leveldown dependencies AsyncStorage (React Native)
mongodown abstract-leveldown dependencies MongoDB
sqldown abstract-leveldown dependencies sqlite3, pg, mysql, WebSQL
dynamo-down abstract-leveldown dependencies AWS DynamoDB
azureleveldown abstract-leveldown dependencies Windows Azure Table Storage
fruitdown abstract-leveldown dependencies IndexedDB (Apple)
localstorage-down abstract-leveldown dependencies localStorage
riakdown abstract-leveldown dependencies riakpbc
mysqldown abstract-leveldown dependencies MySQL
redisdown abstract-leveldown dependencies Redis
leveldown-basho abstract-leveldown dependencies Basho's LevelDB fork
sheet-down abstract-leveldown dependencies Google Sheets
indexeddown abstract-leveldown dependencies IndexedDB
lmdb-leveldown abstract-leveldown dependencies LMDB
localdown abstract-leveldown dependencies localStorage in Node.js
aerospike-leveldown abstract-leveldown dependencies Aerospike
s3leveldown abstract-leveldown dependencies AWS S3
gaiadown-ts abstract-leveldown dependencies Gaia


Modules that implement abstract-leveldown to wrap another abstract-leveldown. This is the preferred extension point.

Name Compatibility Dependencies Description
encoding-down abstract-leveldown dependencies Provides key/value encoding.
@adorsys/encrypt-down abstract-leveldown dependencies Provides encryption for values.
deferred-leveldown abstract-leveldown dependencies Handles delayed-open. Built into levelup.
level-cowdown abstract-leveldown dependencies Copy-on-write abstract-leveldown layer.
abstract-stream-leveldown abstract-leveldown dependencies A stream-based abstract prototype.


Custom level-codec compatible encodings for use with encoding-down.

Name Dependencies Description
charwise dependencies Encode/decode with same encoded sort order as bytewise.
bytewise dependencies Binary serialization which sorts bytewise for arbitrarily complex data structures.

NB. Use charwise if possible. Gives you almost everything bytewise does but much faster.
protocol-buffers dependencies Protocol Buffers for Node.js. Compiled messages are level-codec compatible encodings.
lexicographic-integer-encoding dependencies Wraps lexicographic-integer.


Modules related to splitting a database into sections a.k.a. sublevels.

Name Dependencies Description
subleveldown dependencies Split a levelup database into sublevels with their own keyspace, encoding and events.
level-temp dependencies Create a temporary subleveldown sublevel that is guaranteed to be empty.
level-mount dependencies Mount multiple abstract-leveldown stores by key prefix onto a single store. Can be used with subleveldown.
bytespace dependencies Keypath subspaces prefixed with bytewise tuples. Similar to level-sublevel.

NB. bytewise - and thus bytespace - can be slow. Consider using subleveldown paired with the charwise encoding instead.
level-sublevel dependencies Adds the ability to create subsections with the same API as levelup, but only write/read to a prefixed section, or bucket, of the key-space. Each section also has level-hooks installed.

NB. No longer maintained. We recommend subleveldown instead.
sublevel-prefixer dependencies Utility to prefix a key with a sublevel prefix.
level-sublevel-stream dependencies Find level-sublevel sublevels, not requiring them to be in memory already.
level-subtree dependencies Generate a tree from level-sublevel sublevels, useful when there is no manifest.
level-superlevel dependencies Superlevel adds a "super" level that allows accessing the entire database, discovering level-sublevel sublevels and browsing the database without knowledge of the sublevel structure.
level-subkey dependencies Use path-like keys to separate sections of levelup, with hooks. Adapted from level-sublevel.
level-mirror dependencies Mirror and optionally transform data from one level-sublevel sublevel into another.


Modules for indexing, alternative forms of querying data, MapReduce models and other forms of data processing.

Name Dependencies Description
level-auto-index dependencies Automatic secondary indexing for levelup and subleveldown.
jsonquery dependencies Query levelup with a MongoDB-like query API that returns streams.
jsonquery-engine dependencies A full MongoDB query language implementation with indexes for querying levelup.
level-indico dependencies Yet another indexing plugin for levelup. By providing only a low-level querying mechanism it gives you the power to build more complicated and optimized queries on top of it.

NB. Relies on bytewise and level-sublevel, both of which have caveats.
level-inverted-index dependencies Create an inverted index for full-text search.
map-reduce dependencies A MapReduce implementation on top of levelup. Allows you to define a map reduce query that will run on top of your db. The map reduces are incremental, and you can query the results in real-time.
level-map-merge dependencies Like map-reduce but simpler. Has a batch component that runs periodically, and a real-time component that fills in the gaps. Good for generating inverted indexes.
level-queryengine dependencies A generic pluggable query-engine system (that supports indexes) for levelup.
level-trigger dependencies Triggers for levelup. Runs an async job when a key changes. All jobs will eventually run, even across restarts!
levels dependencies A light-weight full text search engine for levelup (Port of TJ's reds redis search engine).
map-reduce-chained dependencies Extends map-reduce and level-mapped-index to provide easy to setup chained MapReduce. An example use case is to find the top 10 values after a reduce.
path-engine dependencies Query levelup using a JavaScript property path array syntax with indexes.
subindex dependencies Generic pluggable indexing system for levelup.
level-sec dependencies High-level API for creating secondary indexes.
level-secondary dependencies Create and query secondary indexes.
inverted-index dependencies Inverted index built upon levelup.
level-index-update dependencies Remove the old indexes in the same batch as the new ones are inserted.
range-index dependencies Range indexes for levelup.
level-path-index dependencies Index properties of items that live in a tree of materialized paths.
level-sql dependencies SQL queries for levelup.
level-hash-index dependencies Store any string into levelup, and get a collision free hash of that value that you can use in an index (or similar).
level-idx dependencies Another high-level API for creating secondary indexes, using level-auto-index.
level-indexer dependencies Generic indexer for levelup. Only stores document keys for space efficiency.
level-librarian dependencies Lightweight indexing and querying with the LLCJ query language.
level-match-index dependencies Index and filter level-sublevel databases and watch for future changes.
level-assoc dependencies Relational foreign key associations (hasMany, belongsTo) for levelup.
level-tree-index dependencies Tree indexer for levelup.
changes-index dependencies Create indexes from a changes-feed. Provides a way to create a materialized view on top of an append-only log.
changesdown dependencies levelup interface that uses an abstract-leveldown store that writes to a changes-feed to store its state.


Complete Node.js databases built with Level.

Name Dependencies Description
dat dependencies Lets you build streaming data pipelines that can be shared and replicated by others.
pouchdb dependencies PouchDB allows you to store and query data offline and then sync with CouchDB when online. For Node, browser and mobile.
couchup dependencies A CouchDB implementation on top of levelup.
firedup dependencies A node.js implementation of firebase based on levelup.
len dependencies Len is a resource booking database using LevelDB for storage. Useful for calendar and gantt chart apps and for questions like 'can a customer book this resource starting X and ending Y'.
lem dependencies Lem is a telemetry storage database using LevelDB. Keys are indexed by timestamp and you can read values in-between 2 points in time.
levelgraph dependencies A Graph database built on top of levelup with pattern-matching and join support.
linvodb3 dependencies Persistent database on top of levelup for Node.js/NW.js with MongoDB-style queries, Mongoose-like models and a map/reduce system.
rxdb dependencies Event-driven database based on pouchdb. Optimized for reactive programming with observables. Events and state is automatically shared between multiple browser tabs. Queries are defined by the mongoDB mango-standard.
pushdb dependencies A programmable database with document storage and unique indexing capabilities.
search-index dependencies A persistent full text search engine for browser and Node.js.
tacodb dependencies A responsive, Node.js-style database ideal for realtime data. Highly modular and adaptable, allowing extension with the Level ecosystem.
timestreamdb dependencies A full-featured timeseries database on top of LevelDB. Includes a library for streaming statistical operations on timeseries data including joins, aggregates, filters, and map-like operations.
@nano-sql/core dependencies A small (10Kb) RDBMS abstraction on top of levelup that also runs in the browser with undo/redo support, immutable objects and IndexedDB persistence.
vertical dependencies LevelDB distributed, Server and Client!
flash-store dependencies FlashStore is a Key-Value persistent storage with easy to use ES6 Map-like API(both Async and Sync support), powered by LevelDB and TypeScript.
level-fact-base dependencies Store immutable facts and query them with datalog.
dulcimer dependencies Define JSON models and manage indexes, children, foreign keys and much more.
levi dependencies Stream based full-text search for Node.js and browser using levelup.
level-mongo dependencies MongoDB-like database backed by LevelDB.
level-orm dependencies Simple ORM built on levelup.
level-lively dependencies levelup implementation of LivelyDb for doing real-time data binding of a database with local javascript objects.
kwdb dependencies REST wrapper for levelup.
level-restful dependencies REST wrapper for levelup, as an extension to level-orm.
level-rest dependencies REST wrapper for levelup.
NB. Not compatible with latest levelup.

Shared Access

Name Dependencies Description
multileveldown dependencies Share a levelup instance across multiple processes or over the network. An alternative to multilevel, implemented as abstract-leveldown stores with seamless retry support.
level-party dependencies Open a LevelDB (leveldown) handle multiple times, transparently upgrading to multileveldown when more than 1 process try to use the same LevelDB data directory at once and re-electing a new master when the primary unix socket (or named pipe) goes down.
cluster-levelup dependencies Wrap a levelup instance for cluster usage among multiple processes.
multilevel dependencies Share a levelup instance over the network.
multilevel-http dependencies Expose a levelup instance via HTTP.
level-range-emitter dependencies Client and server using multileveldown, range-emitter and ltgt.
level-manifest dependencies Describe the functions that multilevel should provide access to on the client.
level-cluster-get dependencies Given a key, get all values from a cluster of multilevel servers.
level-connect dependencies Connect to a level-party and level-sublevel enabled LevelDB over HTTP.
level-sandbox dependencies A sandbox for hosting multilevel enabled databases.
level2riak dependencies A network service that allows you to connect to a Riak database over HTTP.
leveldb-mount dependencies LevelDB server and client with optional client-side REPL. Built with subleveldown and multileveldown.
level-pubsub dependencies PubSub with server and client on top of levelup.
level-query dependencies Expose a level-sublevel database over HTTP, searchable with query strings.
level-over-http dependencies Another solution to expose levelup over HTTP.
level-rpc dependencies Fast RPC mechanism for levelup. Intended as binary-compatible alternative to multilevel.


Node.js stream or pull-stream implementations for reading and writing data from/to levelup.

Name Dependencies Description
level-ws dependencies General-case, streams3 writable stream for levelup.
level-batch-stream dependencies Streams2 writable stream for levelup.
level-writestream dependencies Streams2 writable stream for levelup.
level-write-stream dependencies Streams1 writable stream for levelup or abstract-leveldown.
level-delete-stream dependencies A streams1 deleteStream for levelup.
pull-level dependencies pull-stream interface to levelup with read streams, write streams and realtime (tail/live) reads.
level-live-stream dependencies Like db.createReadStream() except it's live / tailable. i.e. instead of ending, it will stay open and stream changes to the database as they are inserted.
level-live dependencies Simple, light and correct live read stream implementation.

NB. Uses an undefined streams version.
level-livefeed dependencies A live query of a range in levelup. Similar to level-live-stream but with a streams2 interface.
level-range dependencies Find all K/V-pairs prefixed by a certain key. Streams1.
level-cursor dependencies A stream "cursor" to iterate through a ReadStream / KeyStream / ValueStream.
level-glob dependencies A streams2 read stream filtered and ordered by glob patterns. Keys in the database should be unix-like paths.


Modules that operate on abstract-leveldown iterators.

Name Dependencies Description
level-concat-iterator dependencies Concatenate items from an iterator into an array.
level-iterator-stream dependencies Turn an abstract-leveldown iterator into a readable stream.
Included in levelup.
levelup-async-iterator dependencies Add an iterator() method to levelup with Symbol.asyncIterator.

NB. Conflicts with iterator() added in levelup@3.1.0.
level-iterator dependencies Decoding iterator for levelup instances. Wraps iterators like level-iterator-stream does.

NB. Not compatible with levelup >= 2 due to encodings having moved out to encoding-down. PR welcome.


Low-level utilities for hooking into a levelup instance.

Name Dependencies Description
level-events dependencies Get an event everytime something is written / read / deleted using levelup.
level-hookdown dependencies Simple levelup hooks.
level-post dependencies Consistent post hooks for levelup.
level-condition dependencies Get notified when a condition is triggered inside a levelup instance.
level-hooks dependencies Implements a hook mechanism that allows you to intercept put, delete and batch operations. You can then turn those operations into batches. Useful if you want to turn a put into an atomic batch for say an automatic map operation.

NB. Author recommends using level-sublevel instead of level-hooks directly. Note that level-sublevel is not maintained.

Range Options

Utilities for working with range options, known as ltgt(e), common to levelup streams and abstract-leveldown iterators.

Name Dependencies Description
ltgt dependencies Tool belt to find lower or upper bounds, compare and filter keys and more.
level-option-wrap dependencies Wrap ltgt options with functions. Expose range options without leaking information about your internal key representations.
interval-to-ltgt dependencies Convert an interval string to an ltgt object. This is the counterpart to ltgt-to-interval.
ltgt-to-interval dependencies Convert an ltgt object to an interval string. This is the counterpart to interval-to-ltgt.
range-emitter dependencies Range emitter. Publish keys and subscribe to ranges.

Data Structures

Modules that utilize a specific key/value scheme to provide a higher-level data structure.

Name Dependencies Description
merkle-dag dependencies Merkle DAG on top of LevelDB
merkle-patricia-tree dependencies Implementation of the modified merkle patricia tree as specified in Ethereum's yellow paper.
level-array dependencies The array datatype inside levelup.
level-set dependencies Add a set method to levelup for saving objects in a tree-like structure.
level-push dependencies Add a push method to levelup for saving objects using level-set with auto-generated UUID.
level-version dependencies Store and retrieve versioned data in levelup.
level-queue-type dependencies The queue datatype inside levelup.
level-q dependencies Priority queuing for levelup.
qool dependencies A queue backed by levelup, durable and FIFO.
level-trie dependencies The TRIE data structure and search algorithm, on top of levelup.
level-geospatial dependencies Store key values pairs with lat/lon coordinates, and query using a radius.
level-pathwise dependencies Turn levelup into one huge object of arbitrary size! Efficiently and atomically update and read parts of it.
level-places dependencies Store and retrieve places near a lat/long pair.
level-nearby-stream dependencies Stream in nearby places using the browser's geolocation and level-places.
level-tree dependencies Geospatial indexing for GeoJSON in levelup
level-list dependencies Map lists of data stored in levelup to DOM elements.
level-reactive dependencies Reactive templating for data stored in levelup.
level-paginate dependencies Streaming pagination for levelup.
level-average dependencies Calculate rolling averages in levelup.
level-sum dependencies Calculate sums in levelup and get live updates.
level-historical-json dependencies Keep a history of all the changes of a JSON document.
level-immutable dependencies levelup immutable history and database snapshotting based on ideas in datomic.
level-model dependencies A higher-level module for creating content models using levelup and JSON Schema validation.
level-stream dependencies Persist streams in levelup.
level-stay dependencies An alternative approach to storing scuttlebutts in levelup.
skeyma dependencies Turns a template string (like ${forumId}/${postId}) into parse/serialize streams that transform objects like {forumId, postId, text} into key-value pairs and back.
level-autotable dependencies Auto incrementing keys with "fields" and "records".
level-forks dependencies Forking graph of cascading namespaces.
level-geo dependencies A geospatial index for levelup.
level-geography dependencies Indexed geography storage in levelup.
accountdown dependencies Persistent user accounts.
accountdown-model dependencies A wrapper around accountdown that provides a few additional features


Name Dependencies Description
cachedown dependencies LRU cache implemented as an abstract-leveldown layer.
level-ttl dependencies Add a ttl (time-to-live) option to levelup.
NB. Suffers from race issues. See also tiny-level-ttl.
tiny-level-ttl dependencies Add a ttl (time-to-live) option to levelup, level-sublevel or level-spaces. Also respects level-lock.
level-live-cache dependencies An in-memory cache that keeps up to date with its source.
level-lru-cache dependencies Simple LRU cache.
level-ttl-cache dependencies A pass-through cache for arbitrary objects or binary data using LevelDB, expired by a TTL.
level-cache dependencies A caching module you can place in front of a levelup database. It will cache a subset of the database in an in-memory LRU cache based on configuration. It has an optional synchronous API which will return from the cache only.
levelup-cache dependencies Use levelup to cache remote data.


Name Dependencies Description
level-lock dependencies In-memory advisory read/write locks for levelup keys.
level-mutex dependencies Mutex read/write lock for levelup.
level-updater dependencies Update keys without overlapping changes - makes it possible to implement an atomic incrementer, JSON merger, etc.
levelplus dependencies Adds atomic updates, increments, array pushes, set additions and user-defined atomic operations to levelup.
level-atomics dependencies Add (parallel) atomic operations like insert, replace, increment and decrement to levelup.
level-transactions dependencies Transaction layer for levelup.


Name Dependencies Description
level-schedule dependencies A durable job scheduler.
level-jobs dependencies Job Queue in levelup.
batchdb dependencies levelup and disk storage for queued batch jobs.

File System

Name Dependencies Description
level-filesystem dependencies Full implementation of the Node.js fs module on top of levelup.
browserify-fs dependencies level-filesystem as drop-in fs replacement for the browser, to be used with browserify.
level-fs dependencies Node's fs module with levelup as backend.
level-fs-browser dependencies level-fs as drop-in fs replacement for the browser, to be used with browserify.
level-store dependencies A streaming storage engine based on levelup.
level-serve dependencies Streaming static file server based on levelup.
suckit dependencies Expose a level-store over HTTP.
level-vinyl dependencies Vinyl adapter and blob store. Saves file contents in a content addressable blob store, file metadata in levelup.
level-blob dependencies Store blobs in levelup
level-blob-store dependencies An abstract-blob-store using LevelDB as the storage backend
level-pull-blob-store dependencies A pull-blob-store implementation backed by LevelDB.
level-server dependencies Standalone LevelDB file server based on level-serve, multilevel and level-sublevel.


Name Dependencies Description
level-codec dependencies Encode keys, values and ltgte options. Used in encoding-down.
level-errors dependencies Error types for levelup.
level-test dependencies Easily run your level-* tests against all stores.
level-compose dependencies Compose a database factory from abstract-leveldown and levelup layers.
level-exists dependencies Check if a datum exists without reading its value.
level-move dependencies Move a value to another key.
level-capped dependencies Capped collections.
level-create dependencies Insert a key if and only if it doesn't already exist
level-create-batch dependencies Insert a batch of keys if and only if none of the keys already exist
level-modify dependencies Modify an existing key in levelup. Uses level-lock. See also level-create and level-move.
level-random dependencies Read values of random levelup keys.
level-shared-batch dependencies Share batches and commit collectively
batchlevel dependencies Batch all operations made on a levelup instance. Compatible with subleveldown.
ltest dependencies Test function for levelup testing, based on level-test.
level-probe dependencies Get the first record in a range, using an iterator or stream. NB. Not compatible with latest levelup.
autolevel dependencies Automatically combine levelup with the right abstract-leveldown store for your configuration.
level-lazy-open dependencies Lazily open a leveldown compatible backend.
changeset dependencies Generate diff changesets for javascript objects, decomposing diffs into a series of puts and delete operations. The format is compatible with levelup batch operations. Useful to synchronize objects.
level-delete-range dependencies Delete a range of keys from levelup.
levelup-defaults dependencies Change the defaults settings on a levelup instance by returning a new levelup instance that uses the same abstract-leveldown but different options.
level-methods dependencies Useful meta information about levelup methods.


Name Dependencies Description
level-2pc dependencies A two-phase commit protocol.
level-couch-sync dependencies Replicate from CouchDB to LevelDB.
level-master dependencies Master-Slave replication for levelup.
level-merkle dependencies Uses merkle-trees to replicate data sets. Data must be sets and currently, deletes are not supported.
level-replicate dependencies Master-master replication with levelup. Implements scuttlebutt style handshake, syncs data, then replicates real time changes.
level-replicator dependencies Master-master replication. Same goal as level-replicate but different approach.


CLI, GUI and web interfaces for exploring data.

Name Dependencies Description
lev2 dependencies A complete REPL & CLI for managing LevelDB instances
level-in dependencies A simple command-line utility for writing data to LevelDB via levelup.
level-out dependencies A simple command-line utility for reading LevelDB data via levelup.
level-key-list dependencies Command-line tool for quickly printing a list of keys in a LevelDB database.
lev dependencies A CLI REPL interface for LevelDB.
leveldb-repl dependencies Super simple REPL for LevelDB. Supports filter globbing.
levelhud dependencies LevelDB GUI with an interactive console.
levelweb dependencies A LevelDB GUI. Includes simple data visualization tools.
level-cli dependencies Interact with LevelDB on the command line.
level-explore dependencies A terminal program to visualize LevelDB data. Early stages.
level-repair dependencies CLI tool to repair a LevelDB.
leveldb-editor dependencies Edit a LevelDB from the command line.
levelscan dependencies LevelDB command line scanning utility
levelui dependencies A LevelDB GUI based on atom-shell (now called Electron).

Benchmarking & Debugging

Name Dependencies Description
level-bench dependencies Benchmark abstract-leveldown and levelup stores.
level-compare-forks dependencies Run benchmarks on different level-forks and see how they compare.
level-log dependencies Log all levelup operations, including method calls.
debugdown dependencies Log all operations made on an abstract-leveldown compliant store. For node and browsers.
level-time dependencies Log levelup operations and their duration.
level-dump dependencies Dumps all values and/or keys of a levelup or level-sublevel instance to the console.
level-benchmarks dependencies Run benchmarks against levelup-compatible engines


Name Description Website for Level
level-community General discussion, cross-repo efforts and common information for projects in the community
electron-demo Demo app loading LevelDB into an Electron context.
browserify-starter Demonstrates bundling level for browsers using browserify.
webpack-starter Demonstrates bundling level for browsers using webpack.
level-awesome An open list of awesome Level libraries and resources.
levelmeup Level Me Up Scotty! An intro to Node.js databases via a set of self-guided workshops.


Applications and libraries that use Level modules under the hood.

Name Description
ipfs A peer-to-peer hypermedia protocol to make the web faster, safer, and more open.
clocker Track project hours
copy-on-write A copy-on-write FUSE implementation
chrome-localstorage CLI to manipulate Chrome and Chromium's localStorage on disk.
cipherhub Encrypt messages based on GitHub SSH public keys
code-music-studio Design musical algorithms
level-todo A todo list using LevelDB.
electron-crash-report-service Aggregate crash reports for Electron apps
cross-street-indexer Blazing fast tile based geocoder that matches cross street (road intersections) entirely sourced by OSM QA Tiles.
lt-core Time tracking library.
npm-search An index of npm using levelup.
connect-level A connect / express session store backed by LevelDB via levelup.
hadron A hackable publishing platform using LevelDB as main database.
groove basin Music player server with a web-based user interface. Uses levelup for the music library database.
prerender-level-cache Prerender plugin to use level as a cache store.
tsd Spin up a quick server to visualize time series data.
appfeed Version feed for trusted application delivery
arrivals-osx Watch a folder for audio and video arrivals and convert them to Apple-friendly formats.
bleach-log-server Keep track of bleach levels for a hot tub or a pool.
browserify-cdn Browserify CDN. Caches browserify bundles in LevelDB.


Modules that are deprecated, archived or superseded. Listed here for the historical record.

Name Description
level-browserify Bundle for level-js and leveldown. No longer maintained: superseded by level v5.0.0.
level-mapped-index Indexes for levelup built on map-reduce. Uses a custom indexing function for each index to parse and record index values for each entry. Archived.
level-encoding Implements the encoding logic of a levelup-like database. This functionality lives on in level-codec.
byteup Adds bytewise as a native encoding for levelup. This can now be achieved with encoding-down and { keyEncoding: bytewise }.
msgpackup Adds msgpack as a native encoding for levelup. This can now be achieved with encoding-down and { keyEncoding: msgpack }.
level-cbatch Provides a chainable API for db.batch(). This functionality is now provided by levelup.
memdb levelup + memdown. Superseded by level-mem.
levelup-iterator Use abstract-leveldown iterators instead of readable streams to traverse the database. Iterators are exposed by levelup since levelup@3.1.0.
levelidb A levelup interface on top of IndexedDB. Superseded by level-js and level.
level-multiply Make levelup get(), put() and del() methods accept multiples keys & values. Archived.
level-namespace Split your db up into multiple namespaces. Deprecated.
q-level levelup with Q promises. levelup has native Promise support now.
level-static Use levelup as a static file server. Abandoned.
level-spaces A simple namespacing solution for levelup. Deprecated.
level-object Store objects in levelup. Author recommends level-pathwise instead.
level-scuttlebutt Persist and query scuttlebutt documents (requires level-sublevel). Abandoned.
gun-level Sync graph-style data real-time between browsers and servers. Discontinued.
level-co levelup wrappers for co. Instead use native ES6 features.
level-session Framework-agnostic, LevelDB-backed web server session manager. Archived.
level-socket Backend server that exposes levelup over authenticated cross domain websockets.
level-user Client side library for authenticating with and moving data over level-socket.
string-range Manipulate string ranges for db.createReadStream(). Abandoned.
range-bucket Generate string ranges that group into ranges, suitable for use as database keys. Abandoned.
level-partition-check Extend levelup to error if you write outside of a specified range of keys. Stalled work in progress.
level-binomial-replication Biniomial replication for levelup. Abandoned.
level-bytewise levelup with bytewise key encoding and bytewise-friendly sublevels.
level-peek Get the first or last record in a range. Abandoned.
level-party-hyper Defunct fork of level-party.
level-prebuilt Same as level but with prebuilt binaries. This is now provided by level too.
level-promise levelup with Promises. This is now provided by levelup out of the box.
level-search Index and search every property in levelup containing object values. Abandoned.
level-scout Range search with a query planner. Development stalled.
leveldown-android-prebuilt Defunct fork of leveldown to add Android support. Merged into leveldown.
leveldown-prebuilt Defunct fork of leveldown to add prebuilt binaries. Now provided by leveldown.
level-map-index Another indexing module. Adapted from map-reduce. Author recommends other solutions.
level-memview In memory view on top of levelup. Abandoned.
plumbdb HTTP request handlers for building web services on top of LevelDB. Not in active development.


Module and resource authors are welcome and encouraged to add an entry for their work via a pull request. To add a module, edit modules/*.json and run npm run awesome to update

Level/awesome 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 Contribution Guide for more details.


To sustain Level and its activities, become a backer or sponsor on Open Collective. Your logo or avatar will be displayed on our 28+ GitHub repositories and npm packages. 💖


Open Collective backers


Open Collective sponsors


MIT © 2017-present Contributors.

You can’t perform that action at this time.