gitterHQ / promiseDB

A promise wrapper for indexedDB

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Proxy DB

A promise based wrapper utility for indexedDB.

Usage:

1, Create a database instance

var promiseDB = require('promise-db');

promiseDB
  .createDB({ name: 'database-name', version: 1 })
  .then(function(db){ /* Here lies a fully valid indexed-db instace */ });

2, Add an object to the database

var promiseDB = require('promise-db');

promiseDB
  // the objects key in dbConfig represents the objects stores
  // you wish to create in indexed-db
  .createDB({ name: 'database-name', version: 1, objects: [ {name: 'store'} ] })
  .then(function(db){
    //NB the parameter passed to store can be either an object or collection
    return promiseDB.put(db, 'store', { testObj: 'some-value-goes-here' });
  })
  .then(function(obj){
    //the object saved is now returned
  });

3, Get a single object from the database

var promiseDB = require('promise-db');

promiseDB
  .createDB({ name: 'database-name', version: 1, objects: [ {name: 'store'} ] })
  .then(function(db){
    //you need to pass your database, store name and id
    return promiseDB.get(db, 'store', 1);
  })
  .then(function(obj){
    /* here is your object */
  });

4, Get a collection from the db

var promiseDB = require('promise-db');

promiseDB
  .createDB({ name: 'database-name', version: 1, objects: [ {name: 'store'} ] })
  .then(function(db){
    return promiseDB.getCollection(db, 'store', 'name', 'some-value-goes-here' );
  })
  .then(function(collection){
    /* you collection has arrived */
  });

About

A promise wrapper for indexedDB


Languages

Language:JavaScript 97.0%Language:HTML 3.0%