import koa from 'koa'; import koaBodyparser from 'koa-bodyparser'; import koaCookie from 'koa-cookie'; import koaPassport from 'koa-passport'; import koaSession from 'koa-session'; import { performanceLogger, perfromanceTimer } from './middleware/performance'; import { errorHandler } from './middleware/errorHandler'; const app: Koa = new Koa(); app.use(errorHandler); app.use(perfromanceTimer); app.use(performanceLogger); app.use(bodyParser()); app.use(cookie()); app.keys = [process.env.SESSION_KEYS as string]; app.use(session({}, app)); app.use(passport.initialize()); app.use(passport.session()); // Application error logging. app.on('error', console.error); export default app;