0.9.0 • Published 3 years ago

nestjs-any-config v0.9.0

Weekly downloads
7
License
MIT
Repository
github
Last release
3 years ago

NestJS Any Config

Description

This project is based on @nestjs/config, added JSON config and custom config loader support and kept original functions.

Installation

$ npm i --save nestjs-any-config

Quick Start

Using env files

import { Module } from '@nestjs/common';
import { ConfigModule } from 'nestjs-any-config';

@Module({
  imports: [
    ConfigModule.forRoot({
      type: 'env',
      envFile: {
        ignoreEnvVars: false,
        expandVariables: true,
      },
    }),
  ],
})
export class AppModule {}

Using JSON files

import { Module } from '@nestjs/common';
import { ConfigModule } from 'nestjs-any-config';

@Module({
  imports: [
    ConfigModule.forRoot({
      type: 'json',
      jsonFile: {
        filePath: [
          join(__dirname, 'config.local.json'),
          join(__dirname, 'config.json'),
        ],
      },
    }),
  ],
})
export class AppModule {}

Using custom config file loader

You can using this method to load config from anywhere you want:

import { Module } from '@nestjs/common';
import { ConfigModule } from 'nestjs-any-config';

@Module({
  imports: [
    ConfigModule.forRoot({
      type: 'custom',
      configLoader: async () => {
        // Do your thing here

        // return the config
        return {
          // ...
        }
      },
    }),
  ],
})
export class AppModule {}

Credits

License

MIT