require('dotenv').config(); import express from 'express'; import path from 'path'; import flash from 'express-flash'; import session from 'express-session'; import cookieParser from 'cookie-parser'; import methodOverride from 'method-override'; import sequelize from './dbobject'; import {dbConnectAndInit} from './db'; import adminRouter from './routes/admin'; import blogRouter from './routes/blog'; import apiRouter from './routes/api'; const app = express(); dbConnectAndInit(sequelize); app.set('view engine', 'ejs'); app.use(cookieParser()); app.use(express.urlencoded({extended: false})); app.use(methodOverride('_method')); app.use('/js', express.static(path.join(__dirname, '../../dist/client'))); app.use('/static', express.static(path.join(__dirname, '../../public'))); app.use(session({ cookie: { maxAge: 60000, httpOnly: true, secure: false, // set this to true in production }, secret: process.env.SESSION_SECRET!, resave: false, saveUninitialized: false, })); app.use(flash()); app.get('/', (_req, res) => { res.render('index'); }); app.use('/admin', adminRouter); app.use('/blog', blogRouter); app.use('/api', apiRouter); app.listen(3000);