2016-02-11 14:52:52 -05:00
|
|
|
import Koa from 'koa'
|
|
|
|
|
import bodyParser from 'koa-bodyparser'
|
|
|
|
|
import convert from 'koa-convert'
|
2016-02-11 15:59:51 -05:00
|
|
|
import logger from 'koa-logger'
|
2016-02-11 16:20:48 -05:00
|
|
|
import mongoose from 'mongoose'
|
2016-02-11 16:04:07 -05:00
|
|
|
import session from 'koa-generic-session'
|
2016-02-11 16:20:48 -05:00
|
|
|
import passport from 'koa-passport'
|
2016-03-04 23:05:54 -05:00
|
|
|
import mount from 'koa-mount'
|
|
|
|
|
import serve from 'koa-static'
|
2016-02-11 14:52:52 -05:00
|
|
|
|
2016-03-04 22:40:39 -05:00
|
|
|
import config from '../config'
|
2016-03-04 23:05:54 -05:00
|
|
|
import { errorMiddleware } from '../src/middleware'
|
2016-02-11 14:52:52 -05:00
|
|
|
|
|
|
|
|
const app = new Koa()
|
2016-02-11 16:04:07 -05:00
|
|
|
app.keys = [config.session]
|
2016-02-11 14:52:52 -05:00
|
|
|
|
2016-02-11 16:20:48 -05:00
|
|
|
mongoose.connect(config.database)
|
|
|
|
|
|
2016-02-11 15:59:51 -05:00
|
|
|
app.use(convert(logger()))
|
2016-02-11 14:52:52 -05:00
|
|
|
app.use(convert(bodyParser()))
|
2016-02-11 16:04:07 -05:00
|
|
|
app.use(convert(session()))
|
|
|
|
|
app.use(errorMiddleware())
|
2016-03-04 23:05:54 -05:00
|
|
|
|
|
|
|
|
app.use(convert(mount('/docs', serve(`${process.cwd()}/docs`))))
|
2016-02-11 14:52:52 -05:00
|
|
|
|
2016-03-04 22:40:39 -05:00
|
|
|
require('../config/passport')
|
2016-02-11 16:20:48 -05:00
|
|
|
app.use(passport.initialize())
|
|
|
|
|
app.use(passport.session())
|
|
|
|
|
|
2016-03-05 13:36:57 -05:00
|
|
|
const modules = require('../src/modules')
|
|
|
|
|
modules(app)
|
2016-02-11 14:52:52 -05:00
|
|
|
|
|
|
|
|
app.listen(config.port, () => {
|
|
|
|
|
console.log(`Server started on ${config.port}`)
|
|
|
|
|
})
|
2016-02-11 15:10:57 -05:00
|
|
|
|
|
|
|
|
export default app
|