WhoaDB: Not actually a db. But read/write JSON objects from/to a flat file using this if you want.
CoffeeScript
Switch branches/tags
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
lib
src
test
tmp
.gitignore
.npmignore
.travis.yml
CHANGELOG.md
Cakefile
README.md
package.json

README.md

WhoaDB(!)

Not actually a DB: But read/write JSON objects to/from a flat file using this if you want.

Build Status

This is a component I extracted from a test REST server used if you're working on a front end app that RESTfully stores data and you want to click around for a little bit without firing up an actual backend.

Starting

npm install whoadb
WhoaDB = require 'whoadb'

persistFile = '/tmp/whoadb.json'

db = new WhoaDB(persistFile)

Finding

record1 = { id: 'fff', name:  "food", _collection: "edibles" }
record2 = { id: 'ggg', name:  "more food", _collection: "edibles" }

db.save(record1)
db.save(record2)

db.all('edibles')

# => [ record1, record2 ]

db.find('edibles', 'fff')

# => record1

Create & Update & Destroy

record = { name:  "food", _collection: "edibles" }

db.save(record)

# record object is assigned an id

record.name = "non-food"

db.save(record)

# record updated

db.destroy(record)

Records without the _collection key

If a record doesn't have a _collection key, it'll be added to the undefined collection.

record1 = { id: 'fff', name:  "food" }

db.save(record1)

db.all(undefined)

# => [ record1 ]

db.find(undefined, 'fff')

# => record1