import { Module } from '@nestjs/common'; import { AppController } from './app.controller'; import { AppService } from './app.service'; import { UsersModule } from './users/users.module'; import { ConversationsModule } from './conversations/conversations.module'; import { MessagesModule } from './messages/messages.module'; import { ChatModule } from './chat/chat.module'; import { AuthModule } from './auth/auth.module'; import { MongooseModule } from '@nestjs/mongoose'; import { ConfigModule, ConfigService } from '@nestjs/config'; @Module({ imports: [ ConfigModule.forRoot({ isGlobal: true }), //access env anywhere // connect db MongooseModule.forRootAsync({ inject: [ConfigService], useFactory: (configService: ConfigService) => ({ uri: configService.get('DB_URI'), }), }), UsersModule, ConversationsModule, MessagesModule, ChatModule, AuthModule, ], controllers: [AppController], providers: [AppService], }) export class AppModule {}