node package manager
Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »



MongoDB adapter for catbox

Build Status catbox-mongodb

Lead Maintainer: Marcus Poehls

catbox-mongodb serializes values to BSON using MongoDB driver, therefore following data types are supported for this adapter: Object, Array, Number, String, Date, RegExp.


The lastest catbox-mongodb version 4.x works only with hapi v17

Install catbox-mongodb via NPM. Remember that catbox-mongodb requires its parent module catbox:

npm install catbox catbox-mongodb

Do you use hapi v16 or lower? Install catbox-mongodb version 3.x with a compatible version of catbox:

# for hapi v16 (or lower)
npm install catbox@9 catbox-mongodb@3


catbox-mongodb accepts the following options:

  • uri - the MongoDB URI, defaults to 'mongodb://'
  • partition - the MongoDB database for cached items


Sample catbox cache initialization :

const Catbox = require('catbox');
const cache = new Catbox.Client(require('catbox-mongodb'), {
    uri: 'your-mongodb-uri', // Defaults to 'mongodb://' if not provided
    partition: 'cache'

Or configure your hapi server to use catbox-mongodb as the caching strategy (code snippet uses hapi v17):

const Hapi = require('hapi')
const CatboxMongoDB = require('catbox-mongodb')
const server = new Hapi.Server({
    cache : [{
        name      : 'mongoDbCache',
        engine    : CatboxMongoDB,
        uri       : 'your-mongodb-uri', // Defaults to 'mongodb://' if not provided
        partition : 'cache'