Socket
Socket
Sign inDemoInstall

@clocklimited/save-mongodb

Package Overview
Dependencies
167
Maintainers
7
Versions
2
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    @clocklimited/save-mongodb

mongodb persistence engine for save


Version published
Weekly downloads
109
increased by101.85%
Maintainers
7
Created
Weekly downloads
 

Changelog

Source

v4.0.0

  • There is now a breaking peer dependency change of mongodb version 4. This comes with a minimum MongoDB server version of 3.6.
  • There is no longer support guaranteed for NodeJS versions below 12. If you require this, please stick with the v3.0.1 version.
  • The idType property was previously an instance of ObjectID but is now ObjectId. This is not a functional change, but you may experience issues if comparing types or using instanceof.

Readme

Source

@clocklimited/save-mongodb - mongodb persistence engine for save

CircleCI

Installation

npm install @clocklimited/save-mongodb

// There is a peer dependency of mongodb - you have to bring your own!
npm install mongodb@^4

Usage

If you want to see how this works look at the tests or this simple example:

var MongoClient = require('mongodb').MongoClient // npm install mongodb
var save = require('save') // npm install save
var saveMongodb = require('@clocklimited/save-mongodb')

// connect to your mongodb database.
MongoClient.connect('mongodb://localhost:27017/', function(error, client) {
  if (error) return console.error(error.message)
  var connection = client.db('test')
  // Get a collection. This will create the collection if it doesn't exist.
  connection.collection('contact', function(error, collection) {
    if (error) return console.error(error.message)

    // Create a save object and pass in a mongodb engine.
    var contactStore = save('Contact', { engine: saveMongodb(collection) })

    // Then we can create a new object.
    contactStore.create({ name: 'Paul', email: 'paul@serby.net' }, function(
      error,
      contact
    ) {
      if (error) return console.error(error.message)

      // The created 'contact' is returned and has been given an _id
      console.log(contact)

      // Don't forget to close your database connection!
      client.close()
    })
  })
})

Streaming find()

Find now has a streaming interface


var contactStore = save('Contact', { engine: saveMongodb(collection) })
var es = require('event-stream')

contactStore.find({})
  .pipe(es.stringify())
  .pipe(process.stdout)

Credits

Paul Serby follow me on twitter @serby Clock Limited follow us on twitter @clock

Licence

Licenced under the New BSD License

FAQs

Last updated on 31 May 2022

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc