simple in memory key/value cache with autoclean by timeout
Switch branches/tags
Nothing to show
Latest commit 2048d0e Oct 6, 2015 @silviom silviom 0.0.5
Failed to load latest commit information.
test few tests added Oct 6, 2015
.gitignore v0.0.4 May 15, 2014 updated readme Feb 3, 2015
index.js few tests added Oct 6, 2015
package.json 0.0.5 Oct 6, 2015


A simple in-memory cache for node.js

  • Entries will be disposed on timeout
  • Emits an event on each dispose item by timeout


npm install mem-cache


var Cache = require('mem-cache');
var cache = new Cache();

cache.set('foo', 'bar');


constructor = function(options)

  • 'options' argument is an optional object instance containing the configuration.
    • timeout. Optional number. Specifies in milliseconds the default timeout for each entry. Default 60000 ms.
    • doesNotRenewTimeout Optional boolean. Specifies if entries's timeout should be reseted after each query or update. Default false.
    • timeoutDisabled Optional boolean. Enable/diable timeout feature. If timeout feature is desable, items will not expire. Default false.


set = function(key, value, timeout)

  • Stores or updates a value.
    • key {string} Required.
    • value {any} Required.
    • timeout {number} Optional. Specifies in milliseconds the timeout for this entry.

get = function(key)

  • Retreives a value for a given key, if there is no value for the given key a null value will be returned
    • key {string} Required.

remove = function(key)

  • Deletes the value and its key from the cache

clean = function()

  • Deletes cache's entries all keys



*Returns an string array containing all items' keys. It will include keys of items that are expired but weren't been removed yet.


  • Property that returns the current number of entries in the cache



  • This event will be emitted for every cache entry that was removed because timed out