-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.js
44 lines (33 loc) · 1.16 KB
/
index.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
// This loads the .env file on the project root directory to the process.env variable
require('dotenv').config();
// Require base modules of the app
var Express = require('express');
var Logger = require('morgan');
var BodyParser = require('body-parser');
var MethodOverride = require('method-override');
var path = require('path');
// Instantiate an app instance
var app = Express();
// Set the views directory
app.set('views', path.join(__dirname, 'views'));
// Set the templating engine (Google PugJS for reference)
app.set('view engine', 'pug');
// HTTP logger middleware
app.use(Logger('dev'));
// Body parser for JSON-type requests
app.use(BodyParser.json());
// Body parser for URL encoded (queries) data from requests
app.use(BodyParser.urlencoded({ extended: true }));
// So we can easily use PUT & DELETE requests
app.use(MethodOverride('_method'));
// Array of module names to load
var modules = [
{ name: 'home', path: '/' },
'user'
];
// Load the app routes with the corresponding modules
require('./routeLoader')(modules, app);
// Start the app
app.listen(process.env.PORT || 3000, function () {
console.log('Example app listening on port 3000!');
});