npm install datastore-level

Datastore implementation with level(up|down) backend

About datastore-level

Datastore-level is an essential npm package that serves as a robust datastore implementation with a level(up|down) backend. This node module is particularly designed to enhance storage operations within applications by leveraging the efficient LevelDB storage engine. It's well-suited for developers looking to implement a simple yet powerful data storage solution in their Node.js applications. By integrating datastore-level, developers can benefit from LevelDB's high-performance, low-overhead characteristics for storing and retrieving data, making it an excellent choice for projects requiring a scalable and fast database solution.

To begin using datastore-level in your project, you can simply run the command `npm install datastore-level`. This command installs the package and all necessary dependencies into your Node.js environment, setting you up for immediate use. After installation, the module can be easily integrated into your application, allowing you to utilize LevelDB's capabilities through a simplified API that datastore-level provides. This integration not only enhances your application's performance but also simplifies the development process by abstracting complex database operations into more manageable methods.

The npm package datastore-level is also part of the larger IPFS ecosystem, which is indicated by its inclusion in the IPFS project badges. This association highlights the module's utility in decentralized applications, particularly those built on IPFS technology. For developers working on decentralized web projects or distributed systems, datastore-level offers a compatible, reliable, and efficient backend solution. Its utility in these areas makes it a critical tool for developers aiming to build scalable and high-performance web applications.

More from ipfs

ipfs npm packages

Find the best node modules for your project.

Search npm

interface-datastore

datastore...

Read more
,

ipfs-unixfs

JavaScript implementation of IPFS' unixfs (a Unix FileSystem representation on top of a...

Read more
,

hamt-sharding

JavaScript implementation of sharding using hash array mapped...

Read more
,

ipfs-unixfs-importer

JavaScript implementation of the UnixFs importer used by...

Read more
,

is-ipfs

A set of utilities to help identify IPFS resources on the...

Read more
,

ipfs-unixfs-exporter

JavaScript implementation of the UnixFs exporter used by...

Read more
,

blockstore-core

Contains various implementations of the API contract described in...

Read more
,

ipfs-car

Convert files to content-addressed archives (...

Read more
,

datastore-core

Wrapper implementation for...

Read more
,

ipns

IPNS record...

Read more
,

datastore-level

Datastore implementation with level(up|down)...

Read more
,

ipfs-bitswap

JavaScript implementation of the Bitswap data exchange protocol used by...

Read more

Dependencies

Core dependencies of this npm package and its dev dependencies.

aegir, npm-run-all

Documentation

A README file for the datastore-level code repository. View Code

datastore-level

ipfs.tech Discuss codecov CI

Datastore implementation with level(up|down) backend

About

A Datastore implementation that uses a flavour of Level as a backend.

This module is targetted at Node.js. It is possible to use it in a browser but you should probably use IDBDatastore instead.

Example

import { LevelDatastore } from 'datastore-level'

// Default using level as backend for node or the browser
const store = new LevelDatastore('path/to/store')

// another leveldown compliant backend like memory-level
const memStore = new LevelDatastore(
  new MemoryLevel({
    keyEncoding: 'utf8',
    valueEncoding: 'view'
  })
)

Browser Shimming Leveldown

LevelStore uses the level module to automatically use level if a modern bundler is used which can detect bundle targets based on the pkg.browser property in your package.json.

If you are using a bundler that does not support pkg.browser, you will need to handle the shimming yourself, as was the case with versions of LevelStore 0.7.0 and earlier.

Database names

level-js@3 changed the database prefix from IDBWrapper- to level-js-, so please specify the old prefix if you wish to continue using databases created using datastore-level prior to v0.12.0. E.g.

import leveljs from 'level-js'
import browserStore = new LevelDatastore(
  new Level('my/db/name', {
    prefix: 'IDBWrapper-'
  })
})

More information: https://github.com/Level/level-js/blob/master/UPGRADING.md#new-database-prefix

Install

$ npm i datastore-level

Browser <script> tag

Loading this module through a script tag will make it's exports available as DatastoreLevel in the global namespace.

<script src="https://unpkg.com/datastore-level/dist/index.min.js"></script>

API Docs

License

Licensed under either of

Contribute

Contributions welcome! Please check out the issues.

Also see our contributing document for more information on how we work, and about contributing in general.

Please be aware that all interactions related to this repo are subject to the IPFS Code of Conduct.

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.