Skip to content

StreamMeDev/storage

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A Web Storage Wrapper

NPM Version NPM Downloads js-happiness-style

Web storage for cookies/localStorage/sessionStorage/memory with expiration and other helpful features.

Features:

  • Multiple storage drivers guarantee at minimum in memory storage
  • Filter value, useful for storing json or other non-string data
  • Filter key, useful for consolidating keys
  • Use cookie like path and expires with local and session storage

Install

$ npm install --save @streammedev/storage

Usage

var Storage = require('@streammedev/storage');

var store = new Storage({
	// backend: null, specify a backend with either a 
	// string name or constructor function
	backend: 'memory'

	// Sets the domain, only used with cookies
	domain: 'example.com',

	// Filter function for getting and settting
	setValueFilter: identity,
	getValueFilter: identity,

	// Filter function for the key
	keyFilter: identity
});

store.setItem('foo', 'bar');
store.getItem('foo'); // 'bar'
store.removeItem('foo');
store.getItem('foo'); // undefined
store.clear('foo'); // undefined

Contributing

Contributions are welcome. Please see our guidelines in CONTRIBUTING.md.