Home
Docs
GitHub
Pricing
Blog
Log In

Run Sandworm Audit for your App

Get started
Hold on, we're currently generating a fresh version of this report
Generated on May 21, 2024 via pnpm

level 1.6.0

Fast & simple storage - a Node.js-style LevelDB wrapper (a convenience package bundling LevelUP & LevelDOWN)
Package summary
Share
4
issues
2
high severity
license
1
meta
1
1
moderate severity
vulnerability
1
1
low severity
license
1
5
licenses
59
MIT
16
ISC
2
Apache-2.0
2
other licenses
WTFPL
1
(BSD-2-Clause OR MIT OR Apache-2.0)
1
Package created
15 Apr 2013
Version published
6 Feb 2017
Maintainers
3
Total deps
79
Direct deps
2
License
MIT

Issues

4

2 high severity issues

high
Recommendation: Validate that the license expression complies with your license policy
via: leveldown@1.6.0
via: leveldown@1.6.0
Collapse
Expand

1 moderate severity issue

moderate
Recommendation: Upgrade to version 5.7.2 or later
via: level-packager@1.2.1
Collapse
Expand

1 low severity issue

low
Recommendation: Read and validate the license terms
via: leveldown@1.6.0
Collapse
Expand

Licenses

MIT License

Permissive
OSI Approved
This is a human-readable summary of (and not a substitute for) the license. Disclaimer.
Can
commercial-use
modify
distribute
sublicense
private-use
Cannot
hold-liable
Must
include-copyright
include-license
59 Packages, Including:
abstract-leveldown@2.6.3
ansi-regex@2.1.1
bindings@1.2.1
bl@1.2.3
buffer-alloc-unsafe@1.1.0
buffer-alloc@1.2.0
buffer-fill@1.0.0
code-point-at@1.1.0
core-util-is@1.0.3
decompress-response@3.3.0
deep-extend@0.6.0
deferred-leveldown@1.2.2
delegates@1.0.0
end-of-stream@1.4.4
errno@0.1.8
fast-future@1.0.2
fs-constants@1.0.0
github-from-package@0.0.0
is-fullwidth-code-point@1.0.0
isarray@0.0.1
isarray@1.0.0
level-codec@7.0.1
level-errors@1.0.5
level-iterator-stream@1.3.1
level-packager@1.2.1
level@1.6.0
leveldown@1.6.0
levelup@1.3.9
mimic-response@1.0.1
minimist@1.2.8
mkdirp@0.5.6
nan@2.5.1
node-abi@2.30.1
noop-logger@0.1.1
number-is-nan@1.0.1
object-assign@4.1.1
os-homedir@1.0.2
prebuild-install@2.5.3
process-nextick-args@2.0.1
prr@1.0.1
pump@1.0.3
pump@2.0.1
readable-stream@1.1.14
readable-stream@2.3.8
safe-buffer@5.1.2
safe-buffer@5.2.1
simple-concat@1.0.1
simple-get@2.8.2
string-width@1.0.2
string_decoder@0.10.31

ISC License

Permissive
OSI Approved
This is a human-readable summary of (and not a substitute for) the license. Disclaimer.
Can
commercial-use
modify
distribute
Cannot
hold-liable
Must
include-copyright
include-license
16 Packages, Including:
aproba@1.2.0
are-we-there-yet@1.1.7
chownr@1.1.4
console-control-strings@1.1.0
gauge@2.7.4
has-unicode@2.0.1
inherits@2.0.4
ini@1.3.8
npmlog@4.1.2
once@1.4.0
semver@5.4.1
semver@5.7.2
set-blocking@2.0.0
signal-exit@3.0.7
wide-align@1.1.5
wrappy@1.0.2

Apache License 2.0

Permissive
OSI Approved
This is a human-readable summary of (and not a substitute for) the license. Disclaimer.
Can
commercial-use
modify
distribute
sublicense
private-use
use-patent-claims
place-warranty
Cannot
hold-liable
use-trademark
Must
include-copyright
include-license
state-changes
include-notice
2 Packages, Including:
detect-libc@1.0.3
tunnel-agent@0.6.0

Do What The F*ck You Want To Public License

Permissive
Not OSI Approved
This is a human-readable summary of (and not a substitute for) the license. Disclaimer.
Can
commercial-use
sublicense
distribute
modify
Cannot
Must
rename
1 Packages, Including:
expand-template@1.1.1

(BSD-2-Clause OR MIT OR Apache-2.0)

Expression
1 Packages, Including:
rc@1.2.8
Disclaimer

This deed highlights only some of the key features and terms of the actual license. It is not a license and has no legal value. You should carefully review all of the terms and conditions of the actual license before using the licensed material.

Sandworm is not a law firm and does not provide legal services. Distributing, displaying, or linking to this deed or the license that it summarizes does not create a lawyer-client or any other relationship.

Direct Dependencies

2
All Dependencies CSV
β“˜ This is a list of level 's direct dependencies. Data on all dependencies, including transitive ones, is available via CSV download.
NameVersionSizeLicenseTypeVulnerabilities
level-packager1.2.115.58 kBMIT
prod
1
leveldown1.6.0656.76 kBMIT
prod
2
1

Visualizations

Frequently Asked Questions

What does level do?

Level is a universal abstract-level database for Node.js and browsers, serving as a convenient package to access classic-level in Node.js and browser-level in browsers. This package is ideal for creating lexicographically sorted key-value databases. It allows users to create new databases, add database entries, fetch these entries via keys, and batch operations in Node.js and the browser. It supports both promises and callbacks for its asynchronous methods. Additionally, Level supports creating and using sublevels within the database.

How do you use level?

To use Level, you install it via npm using npm install level. This package should ideally be used with browserify, webpack, rollup or similar bundlers for use in browsers. Here is a brief example of how to use Level:

const { Level } = require('level')

// Create a database
const db = new Level('example', { valueEncoding: 'json' })

// Add an entry with key 'a' and value 1
await db.put('a', 1)

// Add multiple entries
await db.batch([{ type: 'put', key: 'b', value: 2 }])

// Get value of key 'a': 1
const value = await db.get('a')

// Iterate entries with keys that are greater than 'a'
for await (const [key, value] of db.iterator({ gt: 'a' })) {
  console.log(value) // 2
}

If the user wants callback-based interaction, here is an example:

db.put('a', { x: 123 }, function (err) {
  if (err) throw err

  db.get('a', function (err, value) {
    console.log(value) // { x: 123 }
  })
})

Users can also use TypeScript type parameters for Level:

// Specify types of keys and values (any, in the case of json).
// The generic type parameters default to Level<string, string>.
const db = new Level<string, any>('./db', { valueEncoding: 'json' })

await db.put('a', { x: 123 })

// Specify different types when overriding encoding per operation
await db.get<string, string>('a', { valueEncoding: 'utf8' })

// Though in some cases TypeScript can infer them
await db.get('a', { valueEncoding: db.valueEncoding('utf8') })

// It works the same for sublevels
const abc = db.sublevel('abc')
const xyz = db.sublevel<string, any>('xyz', { valueEncoding: 'json' })

Where are the level docs?

The Level documentation is available on GitHub. A comprehensive explanation of the API and more complex usage scenarios, including examples, can be found in the API section of the level package README file on GitHub. There are also links to documentation for certain parts of the codebase only available in abstract-level, classic-level, or browser-level. For a quick way to get started, check out browserify-starter or webpack-starter.