Skip to content

steverandy/json-datastore

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

json-datastore

File-based JSON datastore.

Install

$ npm install --save json-datastore

Usage

let datastore = require("json-datastore")

// Write to a datastore
datastore.write("/path/to/datastore", {
  _id: "global-config", checkUpdates: false
}).then(doNextThing)

// Write to users collection
datastore.write("/path/to/datastore/users", {
  _id: 1, name: "Steve"
}).then(doNextThing)

// Read by id in users collection
datastore.read("/path/to/datastore/users", {_id: 1}).then(user => {
  doNextThing(user)
})

// Read all in users collection
datastore.read("/path/to/datastore/users").then(users => {
  doNextThing(users)
})

// Read all in users collection in descending order
datastore.read("/path/to/datastore/users", {}, {
  descending: true
}).then(users => {
  doNextThing(users)
})

// Remove all in users collection
datastore.remove("/path/to/datastore/users").then(doNextThing)

API

datastore.read(path, query, options)
Read one or many documents in the specified path.

datastore.write(path, object, options)
Write object to a JSON file in the specified path. An _id is generated by default for the object and used as the file name. You can partition the store by writing to sub-directories.

datastore.remove(path, query)
Remove one or many documents in the specified path.

License

MIT License