DB is library managing key value state for MatrixAI's JavaScript/TypeScript applications.
This forks classic-level's C++ binding code around LevelDB 1.20. Differences from classic-level:
- Uses TypeScript from ground-up
- Supports Snapshot-Isolation based transactions via
DBTransaction
- API supports "key paths" which can be used to manipulate "levels" of nested keys
- Value encryption (key-encryption is not supported yet) - requires additional work with block-encryption
npm install --save @matrixai/db
Run nix-shell
, and once you're inside, you can use:
# install (or reinstall packages from package.json)
npm install
# build the dist
npm run build
# run the repl (this allows you to import from ./src)
npm run ts-node
# run the tests
npm run test
# lint the source code
npm run lint
# automatically fix the source
npm run lintfix
npm run bench
View benchmarks here: https://github.com/MatrixAI/js-db/blob/master/benches/results with https://raw.githack.com/
npm run docs
See the docs at: https://matrixai.github.io/js-db/
# npm login
npm version patch # major/minor/patch
npm run build
npm publish --access public
git push
git push --tags