An opensouce library that brings database features into your JavaScript applications.
How you ever noticed how JavaScript object literals look a lot like records? And that if you wrap a group of them up in an array you have something that looks a lot like a database table? TaffyDB is a library to bring powerful database funtionality to that concept and rapidly improve the way you work with data inside of JavaScript.
// Create DB and fill it with records
var friends = TAFFY([
{"id":1,"gender":"M","first":"John","last":"Smith","city":"Seattle, WA","status":"Active"},
{"id":2,"gender":"F","first":"Kelly","last":"Ruth","city":"Dallas, TX","status":"Active"},
{"id":3,"gender":"M","first":"Jeff","last":"Stevenson","city":"Washington, D.C.","status":"Active"},
{"id":4,"gender":"F","first":"Jennifer","last":"Gill","city":"Seattle, WA","status":"Active"}
]);
// Find all the friends in Seattle
friends({city:"Seattle, WA"});
// Find John Smith, by ID
friends({id:1});
// Find John Smith, by Name
friends({first:"John",last:"Smith"});
// Kelly's record
var kelly = friends({id:2}).first();
// Kelly's last name
var kellyslastname = kelly.last;
// Get an array of record ids
var cities = friends().select("id");
// Get an array of distinct cities
var cities = friends().distinct("city");
// Apply a function to all the male friends
friends({gender:"M"}).each(function (r) {
alert(r.name + "!");
});
// Move John Smith to Las Vegas
friends({first:"John",last:"Smith"}).update({city:"Las Vegas, NV:"});
// Remove Jennifer Gill as a friend
friends({id:4}).remove();
// insert a new friend
friends.insert({"id":5,"gender":"F","first":"Jennifer","last":"Gill","city":"Seattle, WA","status":"Active"});