Files
linux-odyssey/services/analytics/src/index.ts
T

33 lines
819 B
TypeScript

import express from 'express'
import { engine } from 'express-handlebars'
import basicAuth from 'express-basic-auth'
import { connectDB } from '../../../packages/models'
import config from './config'
import router from './router'
async function main() {
await connectDB(config.db)
const app = express()
// Setting up Handlebars as templating engine
app.engine('handlebars', engine())
app.set('view engine', 'handlebars')
app.set('views', './views')
app.use(
basicAuth({
users: { [config.username]: config.password },
challenge: true,
realm: 'Linux Odyssey Admin Dashboard',
})
)
app.use(router)
app.use(express.static('./public'))
app.listen(config.port, config.host, () => {
console.log(`Server started on ${config.baseUrl}`)
})
}
main().catch(console.error)