Socket
Book a DemoInstallSign in
Socket

@enoviah/nest-mongo

Package Overview
Dependencies
Maintainers
2
Versions
3
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@enoviah/nest-mongo

Nest module to handle mongo connection

0.0.3
latest
npmnpm
Version published
Weekly downloads
0
Maintainers
2
Weekly downloads
 
Created
Source

Nest mongo module

The purpose of this module is to be used with nest rest api in order to initialize your
connection with mongoDb service

It can be use as an injector in your modules. It will only create 1 instance on mongo
 connection even if you import it in all of your modules

Installation

npm install @enoviah/nest-mongo

Configuration

In order to use the connection as provider, you will need to import the module into a nest module :

import { DatabaseModule } from '@enoviah/nest-mongo';

@Module({
  imports: [DatabaseModule],
  controllers: [HealthController],
  providers: [HealthService, ...healthProviders],
})
export class HealthModule {
}

After that, you can use DATABASE_CONNECTION where you need it. For instance, if you want to use this module with a mongoose schema :


// We provide HEALTH_MODEL in order to use it in our HealthService
// We tell the healthProvider that the mongo connection is handle by another provider (DATABASE_CONNECTION)
// So we inject it, and we can use the connection
export const healthProviders = [
  {
    provide: 'HEALTH_MODEL',
    useFactory: (connection: Connection) => connection.model('Health', HealthSchema),
    inject: ['DATABASE_CONNECTION'],
  },
];

Specific MongoDb address

By default, nest-mongo try to connect to

mongodb://localhost:27017

You can edit all of the uri by adding some environments variables defined as follow:


export const mongoConfig: MongoConfig = {
  MONGO_ADDRESS: process.env.MONGO_ADDRESS || '127.0.0.1',
  MONGO_DATABASE: process.env.MONGO_DATABASE || 'yourDb',
  MONGO_PASSWORD: process.env.MONGO_PASSWORD || '',
  MONGO_PORT: process.env.MONGO_PORT || 27017,
  MONGO_USER: process.env.MONGO_USER || '',
};

As you see, you can edit environments or edit mongoConfig manually before it is load

Warning: avoid as possible to edit mongoConfig directly. Prefer edit environment

Build & Usage

you can manually build & use this package without npm install. First step is to dpwnload this repo. Then, we install dependencies & run

npm run build

If you want yo use the build result as a local npm package, just run

npm link

Next, in your nest api, run:

npm link @enoviah/nest-mongo

and that's it

Keywords

Nest

FAQs

Package last updated on 15 Apr 2020

Did you know?

Socket

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

About

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.

  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc

U.S. Patent No. 12,346,443 & 12,314,394. Other pending.