Skip to content

Commit 90cb07e

Browse files
committed
Add express app
1 parent bcee83e commit 90cb07e

File tree

9 files changed

+123
-0
lines changed

9 files changed

+123
-0
lines changed

CharlieEDogsServer/app.js

+48
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
var express = require('express');
2+
var path = require('path');
3+
var favicon = require('serve-favicon');
4+
var logger = require('morgan');
5+
var cookieParser = require('cookie-parser');
6+
var bodyParser = require('body-parser');
7+
8+
var index = require('./routes/index');
9+
var users = require('./routes/users');
10+
var dogs = require('./routes/dogs');
11+
12+
var app = express();
13+
14+
// view engine setup
15+
app.set('views', path.join(__dirname, 'views'));
16+
app.set('view engine', 'jade');
17+
18+
// uncomment after placing your favicon in /public
19+
//app.use(favicon(path.join(__dirname, 'public', 'favicon.ico')));
20+
app.use(logger('dev'));
21+
app.use(bodyParser.json());
22+
app.use(bodyParser.urlencoded({ extended: false }));
23+
app.use(cookieParser());
24+
app.use(express.static(path.join(__dirname, 'public')));
25+
26+
app.use('/', index);
27+
app.use('/users', users);
28+
app.use('/dogs', dogs);
29+
30+
// catch 404 and forward to error handler
31+
app.use(function(req, res, next) {
32+
var err = new Error('Not Found');
33+
err.status = 404;
34+
next(err);
35+
});
36+
37+
// error handler
38+
app.use(function(err, req, res, next) {
39+
// set locals, only providing error in development
40+
res.locals.message = err.message;
41+
res.locals.error = req.app.get('env') === 'development' ? err : {};
42+
43+
// render the error page
44+
res.status(err.status || 500);
45+
res.render('error');
46+
});
47+
48+
module.exports = app;

CharlieEDogsServer/package.json

+17
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
{
2+
"name": "express-test",
3+
"version": "0.0.0",
4+
"private": true,
5+
"scripts": {
6+
"start": "node ./bin/www"
7+
},
8+
"dependencies": {
9+
"body-parser": "~1.18.2",
10+
"cookie-parser": "~1.4.3",
11+
"debug": "~2.6.9",
12+
"express": "~4.15.5",
13+
"jade": "~1.11.0",
14+
"morgan": "~1.9.0",
15+
"serve-favicon": "~2.4.5"
16+
}
17+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
body {
2+
padding: 50px;
3+
font: 14px "Lucida Grande", Helvetica, Arial, sans-serif;
4+
}
5+
6+
a {
7+
color: #00B7FF;
8+
}

CharlieEDogsServer/routes/dogs.js

+14
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
var express = require('express');
2+
var router = express.Router();
3+
4+
const dogs = [
5+
{ breed: "Pitbull" },
6+
{ breed: "Vira-lata" },
7+
{ breed: "Bulterriet" }
8+
];
9+
10+
router.get("/", function(req, res, next) {
11+
res.send(dogs);
12+
});
13+
14+
module.exports = router;

CharlieEDogsServer/routes/index.js

+9
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
var express = require('express');
2+
var router = express.Router();
3+
4+
/* GET home page. */
5+
router.get('/', function(req, res, next) {
6+
res.render('index', { title: 'Express' });
7+
});
8+
9+
module.exports = router;

CharlieEDogsServer/routes/users.js

+9
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
var express = require('express');
2+
var router = express.Router();
3+
4+
/* GET users listing. */
5+
router.get('/', function(req, res, next) {
6+
res.send('respond with a resource');
7+
});
8+
9+
module.exports = router;

CharlieEDogsServer/views/error.jade

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
extends layout
2+
3+
block content
4+
h1= message
5+
h2= error.status
6+
pre #{error.stack}

CharlieEDogsServer/views/index.jade

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
extends layout
2+
3+
block content
4+
h1= title
5+
p Welcome to #{title}

CharlieEDogsServer/views/layout.jade

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
doctype html
2+
html
3+
head
4+
title= title
5+
link(rel='stylesheet', href='/stylesheets/style.css')
6+
body
7+
block content

0 commit comments

Comments
 (0)