58 lines
1.4 KiB
JavaScript
58 lines
1.4 KiB
JavaScript
'use strict'
|
|
|
|
process.env.NODE_ENV = process.env.NODE_ENV || 'development'
|
|
|
|
// modules > native
|
|
const path = require('path')
|
|
|
|
// modules > 3rd party
|
|
const express = require('express')
|
|
const bodyParser = require('body-parser')
|
|
const chalk = require('chalk')
|
|
|
|
// initialize an express instance
|
|
const server = express()
|
|
|
|
// set template engine
|
|
server.set('view engine', 'ejs')
|
|
server.set('views', path.join(__dirname, 'templates'))
|
|
server.use('/public', express.static('public'))
|
|
|
|
// set up console logs in dev mode
|
|
if (process.env.NODE_ENV !== 'production') {
|
|
const morgan = require('morgan')
|
|
|
|
server.use(morgan('dev'))
|
|
}
|
|
|
|
server.use(bodyParser.json())
|
|
server.use(bodyParser.urlencoded({ extended: true }))
|
|
|
|
server.use('/', (req, res, next) => {
|
|
console.log('hello')
|
|
res.render('search')
|
|
})
|
|
|
|
server.use('/search', (req, res, next) => {
|
|
res.render('search')
|
|
})
|
|
|
|
server.use('/search-result', (req, res, next) => {
|
|
res.render('result')
|
|
})
|
|
|
|
// server.use('/', (req, res, next) => {
|
|
// console.log('hello')
|
|
// res.send('<h1>Hello</h1>')
|
|
// })
|
|
|
|
const port = process.env.port || 1337
|
|
|
|
server.listen(port, () => {
|
|
console.info(`[${chalk.cyan('INIT')}] HTTP Server listening on port ${chalk.magenta(port)} (${chalk.yellow(server.get('env'))})`)
|
|
})
|
|
|
|
const goodreads = require('./api/goodreads')
|
|
|
|
goodreads.search().then((result) => console.dir(result, { colors: true, depth: 5 }))
|