A simple JSON file store

npm install jfs
7 downloads in the last week
16 downloads in the last month

JSON file store

A simple JSON file store for node.js.

Build Status Dependency Status NPM version

WARNING: Don't use it if you want to persist a large amount of objects. Use a real DB instead.


npm install jfs --save


var Store = require("jfs");
var db = new Store("data");

var d = {
  foo: "bar"

// save with custom ID
db.save("anId", d, function(err){
  // now the data is stored in the file data/anId.json

// save with generated ID
db.save(d, function(err, id){
  // id is a unique ID

// save synchronously
var id = db.saveSync("anId", d);

db.get("anId", function(err, obj){
  // obj = { foo: "bar" }

// pretty print file content
var prettyDB = new Store("data",{pretty:true});
var id = prettyDB.saveSync({foo:{bar:"baz"}});
// now the file content is formated in this way:
  "foo": {
    "bar": "baz"
// instead of this:

// get synchronously
var obj = db.getSync("anId");

// get all available objects
db.all(function(err, objs){
  // objs is a map: ID => OBJECT

// get all synchronously
var objs = db.allSync()

// delete by ID
db.delete("myId", function(err){
  // the file data/myId.json was removed

// delete synchronously

Single file mode

If you want to store all objects in a single file, just set the single flag:

var db = new Store("data",{single:true});

or point to a JSON file:

var db = new Store("./path/to/data.json");


This project is licensed under the MIT License.

npm loves you