Socket
Socket
Sign inDemoInstall

simple-json-db

Package Overview
Dependencies
0
Maintainers
1
Versions
7
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    simple-json-db

A simple, no-frills, JSON storage engine for Node.JS


Version published
Weekly downloads
1.7K
decreased by-26.83%
Maintainers
1
Install size
16.5 kB
Created
Weekly downloads
 

Readme

Source

Simple JSONdb npm npm Minimum NodeJS version Dependents (via libraries.io) npm bundle size

A simple, no-frills, JSON key-value storage engine for Node.JS with full test coverage.

What is a key-value storage and when to use it?

Installation

npm install simple-json-db

Usage

Instantiation

const JSONdb = require('simple-json-db');
const db = new JSONdb('/path/to/your/storage.json');

The prototype of the constructor is new JSONdb(string, [object]), and you can supply the optional options object by giving it as second parameter:

const db = new JSONdb('/path/to/your/storage.json', { ... });

See the Options section for more details.

Options

All keys are optional and will default to a safe value.

KeyValue typeDescriptionDefault value
asyncWriteBooleanEnables the storage to be asynchronously written to disk.false (synchronous behaviour)
syncOnWriteBooleanMakes the storage be written to disk after every modification.true
jsonSpacesNumberThe number of spaces used for indentation in the output JSON.4
stringifyFunction(object) => stringA stringifier function to serialize JS objects into JSON strings.JSON.stringify
parseFunction(string) => objectA parser function to deserialize JSON strings into JS objects.JSON.parse

Set a key

db.set('key', 'value');

The key parameter must be a string, value can be whatever kind of object can be stored in JSON format. JSON.stringify() is your friend!

Get a key

db.get('key');

The key parameter must be a string. If the key exists its value is returned, if it doesn't the function returns undefined.

Check a key

db.has('key');

The key parameter must be a string. If the key exists true is returned, if it doesn't the function returns false.

Delete a key

db.delete('key');

The key parameter must be a string. The function returns as per the delete operator if the key exists, else it returns undefined.

Sync to disk

db.sync();

This function writes the JSON storage object to the file path specified as the parameter of the main constructor. Consult the Options section for usage details; on default options there is no need to manually invoke it.

Access JSON storage

db.JSON();

This will return a copy of the internal JSON storage object, for you to tinker with and loop over.

Replace JSON storage

db.JSON({ data });

Giving a parameter to the JSON function makes the object passed replace the internal one. Be careful, as there's no way to recover the old object if the changes have already been written to disk.

Tests

Run npm ci to install the testing dependencies and npm test to start the test suite.

Keywords

FAQs

Last updated on 07 Mar 2022

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc