import { Module } from '@nestjs/common'; import { ConfigModule, ConfigService } from '@nestjs/config'; import { TypeOrmModule } from '@nestjs/typeorm'; import { JwtModule } from '@nestjs/jwt'; import { ProjectsModule } from './projects/projects.module'; import { TasksModule } from './tasks/tasks.module'; import { JwtAuthGuard } from './auth/jwt-auth.guard'; @Module({ imports: [ ConfigModule.forRoot(), TypeOrmModule.forRoot({ type: 'postgres', host: process.env.DB_HOST || 'localhost', port: Number(process.env.DB_PORT) || 5432, username: process.env.DB_USER || 'postgres', password: process.env.DB_PASSWORD || 'postgres', database: process.env.DB_NAME || 'todo', autoLoadEntities: true, synchronize: true, }), JwtModule.register({ secret: process.env.JWT_SECRET || 'super_secret_key', signOptions: { expiresIn: process.env.JWT_EXPIRES_IN || '3600s' }, }), ProjectsModule, TasksModule, ], providers: [JwtAuthGuard], }) export class AppModule {}