import { NestFactory } from '@nestjs/core'; import { AppModule } from './app.module'; import * as dotenv from 'dotenv'; import * as session from 'express-session'; import * as connectRedis from 'connect-redis'; import * as redis from 'redis'; import { join } from 'path'; import { NestExpressApplication } from '@nestjs/platform-express'; dotenv.config(); async function bootstrap() { const app = await NestFactory.create(AppModule); const RedisStore = connectRedis(session); const redisClient = redis.createClient({ host: 'localhost', port: 6379, }); // app.use(express.urlencoded()); // app.use(cookieParser()); app.use( session({ secret: process.env.SESSION_SECRET, resave: true, saveUninitialized: false, store: new RedisStore({ client: redisClient }), cookie: { sameSite: 'lax', secure: process.env.NODE_ENV === 'production', }, }), ); app.useStaticAssets(join(__dirname, '..', 'public'), { prefix: '/public/', }); app.setBaseViewsDir(join(__dirname, '..', 'views')); app.setViewEngine('pug'); await app.listen(3000); } bootstrap();