moleculer-db-adapter-mongo

MongoDB native adapter for Moleculer DB service.

Usage no npm install needed!

<script type="module">
  import moleculerDbAdapterMongo from 'https://cdn.skypack.dev/moleculer-db-adapter-mongo';
</script>

README

Moleculer logo

moleculer-db-adapter-mongo NPM version

MongoDB native adapter for Moleculer DB service.

Features

  • schemaless adapter
  • MongoDB driver v3.0

Install

$ npm install moleculer-db moleculer-db-adapter-mongo --save

Usage

"use strict";

const { ServiceBroker } = require("moleculer");
const DbService = require("moleculer-db");
const MongoDBAdapter = require("moleculer-db-adapter-mongo");

const broker = new ServiceBroker();

// Create a Mongoose service for `post` entities
broker.createService({
    name: "posts",
    mixins: [DbService],
    adapter: new MongoDBAdapter("mongodb://localhost/moleculer-demo"),
    collection: "posts"
});


broker.start()
// Create a new post
.then(() => broker.call("posts.create", {
    title: "My first post",
    content: "Lorem ipsum...",
    votes: 0
}))

// Get all posts
.then(() => broker.call("posts.find").then(console.log));

Options

Example with connection URI

new MongoDBAdapter("mongodb://localhost/moleculer-db")

Example with connection URI & options

new MongoDBAdapter("mongodb://db-server-hostname/my-db", {
    keepAlive: 1
})

Test

$ npm test

In development with watching

$ npm run ci

License

The project is available under the MIT license.

Contact

Copyright (c) 2016-2020 MoleculerJS

@moleculerjs @MoleculerJS