0.1.0 • Published 7 years ago

hoard.js v0.1.0

Weekly downloads
2
License
MIT
Repository
github
Last release
7 years ago

hoard.js

Build Status Coverage Status NPM Downloads license XO code style

Blazing fast in-memory caching library for Node.js.

Installation

$ npm install hoard.js

Usage

The first step if to require the module:

const cache = require('hoard.js')

cache.set(key, value, ttl = null)

Stores an item in the cache. You can specify the time to live (in seconds).

// won't expire
cache.set('foo', 'bar')
.then(data => console.log(data)) // 'bar'

// will expire in 60 seconds
cache.set('me', 'Hi this is me', 60)
.then(data => console.log(data)) // 'Hi this is me'

cache.get(key)

Retrieves an item from the cache. It resolves the promise if the item was found or rejects the promise if the item is not present in the cache or has expired.

cache.get('foo')
.then(data => console.log(data)) // bar

cache.get('unknown')
.catch(err => console.error(err)) // ITEM_NOT_FOUND

cache.incr(key)

Increments the value of the given key. Will reject the promise if the value is not of number type.

cache.set('age', 24)
.then(() => cache.incr('age'))
.then(data => console.log(data)) // 25

cache.set('foo', 'bar')
.then(() => cache.incr('foo'))
.catch(err => console.error(err)) // ITEM_IS_NOT_A_NUMBER

cache.decr(key)

Decrements the value of the given key. Will reject the promise if the value is not of number type.

cache.set('age', 24)
.then(() => cache.decr('age'))
.then(data => console.log(data)) // 23

cache.set('foo', 'bar')
.then(() => cache.decr('foo'))
.catch(err => console.error(err)) // ITEM_IS_NOT_A_NUMBER

cache.del(key)

Deletes an item from the cache. If the item was successfully deleted, the promise resolves with the item value, otherwise it rejects the promise.

cache.del('foo')
.then(data => console.log(data)) // 'bar'

cache.clear()

Deletes all items from the cache.

cache.clear()
.then(() => console.log('Cache is now empty'))

Licence

MIT