kabin v0.0.3
-- Welcome to Kabin! (alpha warning!)--
This is a simple JSON file database for nodejs. The console (examples/prompt.js) has already connected to the sample database.
Connect to a directory at path var db = new kabin.JSON({path: 'data'}); Create a new record with db.insert('e', {x: 10, y: 20}) Read data from a record with db.e.x => 10 Write data to a record with d.e = {x: 1, y: 2}
db.migrate() -> migrate to latest version. db.version is the current version. db.migrate({version: x}) -> migrate to version x. up or down depending on current version.
Put a model in db/models. See Recipe.js for an example: { init: function (data) { this.data = data; if(!this.data.saved) { this.data.saved = 0; } },
getIngredients: function () {
return this.data.ingredients;
},
onSave: function () {
this.data.saved += 1;
return this.data;
}
}
A model must have the onSave function which defines what json-data it saves. A JSON file with the field type, will check if such a model exists, and then create it. See db.data.b for an example of a Recipe class instance. Will probably make the saving more logical. Currently to save changes to db.data.b you need to write db.data.b = db.data.b.
kabin>