This package has been deprecated

Author message:

deprecated, this was never a thing, I suggest using https://github.com/azu/localstorage-ponyfill instead

generic_store

0.2.0 • Public • Published

generic_store.js

Build Status NPM version Bower version Project status license status Total views Gittip

STILL IN PROGRESS - MISSING FEATURES - API MAY CHANGE

Introduction

generic_store.js wraps store.js and add :

  • an implementation in memory for safe tests or other use
  • an (optional) automatic key prefixing for avoiding conflicts (NOT IMPLEMENTED)

NOTE : ONLY set() AND get() ARE IMPLEMENTED FOR NOW !

License : public domain (http://unlicense.org/)

User Story

In you web app, you use the convenient local storage instead of fat cookies. Of course, you use store.js (https://github.com/marcuswestin/store.js) to access the local storage.

Now there are two problems :

  • it's unsafe to unit test your app since local storage is persistent and shared
  • you may mess with another local storage user which use the same keys

Solution :

  • Have a store.js implementation in memory for tests
  • Have an automatic prefixing of keys

Usage

define(
[
    'generic_store/generic_store',
],
function(GenericStore) {
    "use strict";
 
    // new store, in memory, guaranteed to be empty
    var store1 = GenericStore.make_new("memory");
    // new store, in memory, guaranteed to be empty, different from the previous one
    var store2 = GenericStore.make_new("memory");
    // existing store (local storage), "existing" reminds us that it may already contain data
    var store3 = GenericStore.get_existing("local");
 
    // now use your store like store.js
    store.set('username', 'marcus');
    store.get('username');
    store.set('user', { name: 'marcus', likes: 'javascript' });
 

Installation

Bower : bower install generic_store.js Npm : npm install generic_store

Unit tests

in the 'spec' folder. See also readme.txt in the 'test_runner' folder.

Readme

Keywords

none

Package Sidebar

Install

npm i generic_store

Weekly Downloads

0

Version

0.2.0

License

public domain

Last publish

Collaborators

  • offirmo