GaviaはIndexedDBのためのActiveRecord風ライブラリです。 検索結果をjQueryDeferred風のオリジナルDeferredオブジェクトで返すため、 コールバックを多用することなく宣言的かつ簡潔に処理を書くことが出来ます。
依存関係もなく、GaviaのみでIndexedDBの処理を完結させることが出来ます。
bower install gavia
bowerはWeb開発用のJavaScriptパッケージマネージャです。
MIT LICENSE
var db = new Gavia('test-db', {
store: {
keyPath: 'id',
autoIncrement: true,
index: {
unique: true
}
}
});
var test = db.store.create();
test.hoge = 'hogehoge';
test.save().done(function() {
console.log('save done');
});
db.store.filter(function(record) {
return record.hoge.length > 5;
}).done(function(results) {
results.forEach(function(result) {
console.log(result);
});
});
簡単なTODOアプリをGaviaを使って構築してみました。
http://kokudori.github.io/gavia/example/index.html
ソースはGistにて公開しています。
https://gist.github.com/kokudori/8254669