diff options
| author | pepper <pepper@chimecrisis.com> | 2014-11-28 01:34:32 -0800 |
|---|---|---|
| committer | pepper <pepper@chimecrisis.com> | 2014-11-28 01:34:32 -0800 |
| commit | c1b956127563159154d5fea7434ac9beb20ee842 (patch) | |
| tree | 92fe721b10dde50e75c17ff1bcc9c106fcc64e11 | |
first commit
| -rw-r--r-- | .bowerrc | 4 | ||||
| -rw-r--r-- | .gitignore | 3 | ||||
| -rw-r--r-- | Gruntfile.js | 79 | ||||
| -rw-r--r-- | app.js | 63 | ||||
| -rw-r--r-- | bin/www | 9 | ||||
| -rw-r--r-- | bower.json | 9 | ||||
| -rw-r--r-- | package.json | 25 | ||||
| -rw-r--r-- | public/css/.style.css.un~ | bin | 0 -> 13527 bytes | |||
| -rw-r--r-- | public/css/style.css | 27 | ||||
| l--------- | public/css/unsemantic-grid-responsive-tablet.css | 1 | ||||
| -rw-r--r-- | routes/.index.js.un~ | bin | 0 -> 3794 bytes | |||
| -rw-r--r-- | routes/index.js | 15 | ||||
| -rw-r--r-- | routes/user.js | 9 | ||||
| -rw-r--r-- | views/.header.ejs.un~ | bin | 0 -> 4391 bytes | |||
| -rw-r--r-- | views/.index.ejs.un~ | bin | 0 -> 34973 bytes | |||
| -rw-r--r-- | views/css_test.ejs | 28 | ||||
| -rw-r--r-- | views/error.ejs | 7 | ||||
| -rw-r--r-- | views/footer.ejs | 2 | ||||
| -rw-r--r-- | views/header.ejs | 12 | ||||
| -rw-r--r-- | views/index.ejs | 28 |
20 files changed, 321 insertions, 0 deletions
diff --git a/.bowerrc b/.bowerrc new file mode 100644 index 0000000..2f00fdf --- /dev/null +++ b/.bowerrc @@ -0,0 +1,4 @@ +{ + "directory": "public/components", + "json": "bower.json" +} diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..80fcba8 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +node_modules/ +public/components +.sass-cache
\ No newline at end of file diff --git a/Gruntfile.js b/Gruntfile.js new file mode 100644 index 0000000..646900e --- /dev/null +++ b/Gruntfile.js @@ -0,0 +1,79 @@ +'use strict'; + +var request = require('request'); + +module.exports = function (grunt) { + // show elapsed time at the end + require('time-grunt')(grunt); + // load all grunt tasks + require('load-grunt-tasks')(grunt); + + var reloadPort = 35729, files; + + grunt.initConfig({ + pkg: grunt.file.readJSON('package.json'), + develop: { + server: { + file: 'bin/www' + } + }, + watch: { + options: { + nospawn: true, + livereload: reloadPort + }, + server: { + files: [ + 'bin/www', + 'app.js', + 'routes/*.js' + ], + tasks: ['develop', 'delayed-livereload'] + }, + js: { + files: ['public/js/*.js'], + options: { + livereload: reloadPort + } + }, + css: { + files: [ + 'public/css/*.css' + ], + options: { + livereload: reloadPort + } + }, + views: { + files: ['views/*.ejs'], + options: { + livereload: reloadPort + } + } + } + }); + + grunt.config.requires('watch.server.files'); + files = grunt.config('watch.server.files'); + files = grunt.file.expand(files); + + grunt.registerTask('delayed-livereload', 'Live reload after the node server has restarted.', function () { + var done = this.async(); + setTimeout(function () { + request.get('http://localhost:' + reloadPort + '/changed?files=' + files.join(','), function (err, res) { + var reloaded = !err && res.statusCode === 200; + if (reloaded) { + grunt.log.ok('Delayed live reload successful.'); + } else { + grunt.log.error('Unable to make a delayed live reload.'); + } + done(reloaded); + }); + }, 500); + }); + + grunt.registerTask('default', [ + 'develop', + 'watch' + ]); +}; @@ -0,0 +1,63 @@ +var express = require('express'); +var path = require('path'); +var favicon = require('serve-favicon'); +var logger = require('morgan'); +var cookieParser = require('cookie-parser'); +var bodyParser = require('body-parser'); + +var routes = require('./routes/index'); +var users = require('./routes/user'); + +var app = express(); + +// view engine setup +app.set('views', path.join(__dirname, 'views')); +app.set('view engine', 'ejs'); + +// app.use(favicon(__dirname + '/public/img/favicon.ico')); +app.use(logger('dev')); +app.use(bodyParser.json()); +app.use(bodyParser.urlencoded({ + extended: true +})); +app.use(cookieParser()); +app.use(express.static(path.join(__dirname, 'public'))); + +app.use('/', routes); +app.use('/users', users); + +/// catch 404 and forward to error handler +app.use(function(req, res, next) { + var err = new Error('Not Found'); + err.status = 404; + next(err); +}); + +/// error handlers + +// development error handler +// will print stacktrace +if (app.get('env') === 'development') { + app.use(function(err, req, res, next) { + res.status(err.status || 500); + res.render('error', { + message: err.message, + error: err, + title: 'error' + }); + }); +} + +// production error handler +// no stacktraces leaked to user +app.use(function(err, req, res, next) { + res.status(err.status || 500); + res.render('error', { + message: err.message, + error: {}, + title: 'error' + }); +}); + + +module.exports = app; @@ -0,0 +1,9 @@ +#!/usr/bin/env node +var debug = require('debug')('expressapp'); +var app = require('../app'); + +app.set('port', process.env.PORT || 3000); + +var server = app.listen(app.get('port'), function() { + debug('Express server listening on port ' + server.address().port); +}); diff --git a/bower.json b/bower.json new file mode 100644 index 0000000..7c61521 --- /dev/null +++ b/bower.json @@ -0,0 +1,9 @@ +{ + "name": "yeoman3", + "version": "0.0.1", + "ignore": [ + "**/.*", + "node_modules", + "components" + ] +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..0a2e575 --- /dev/null +++ b/package.json @@ -0,0 +1,25 @@ +{ + "name": "yeoman3", + "version": "0.0.1", + "private": true, + "scripts": { + "start": "node ./bin/www" + }, + "dependencies": { + "express": "~4.4.5", + "serve-favicon": "~2.0.1", + "morgan": "~1.1.1", + "cookie-parser": "~1.3.2", + "body-parser": "~1.4.3", + "debug": "~1.0.2", + "ejs": "~1.0.0" + }, + "devDependencies": { + "grunt": "~0.4.5", + "grunt-develop": "~0.4.0", + "grunt-contrib-watch": "~0.6.1", + "request": "~2.36.0", + "time-grunt": "~0.3.2", + "load-grunt-tasks": "~0.6.0" + } +} diff --git a/public/css/.style.css.un~ b/public/css/.style.css.un~ Binary files differnew file mode 100644 index 0000000..58568dd --- /dev/null +++ b/public/css/.style.css.un~ diff --git a/public/css/style.css b/public/css/style.css new file mode 100644 index 0000000..1164000 --- /dev/null +++ b/public/css/style.css @@ -0,0 +1,27 @@ +.blue{ + background: blue; +} +.green{ + background: green; +} +.red{ + background: red; +} +.tall{ + height: 100%; + padding-bottom:100%; + margin-bottom: -100%; +} +.small-border{ + border: 1px solid black; + +} +.no-padding{ + padding-top: 0px; +padding-right: 0px; +padding-bottom: 0px; +padding-left: 0px; +} +.no-overflow{ +overflow:hidden; +} diff --git a/public/css/unsemantic-grid-responsive-tablet.css b/public/css/unsemantic-grid-responsive-tablet.css new file mode 120000 index 0000000..02634c0 --- /dev/null +++ b/public/css/unsemantic-grid-responsive-tablet.css @@ -0,0 +1 @@ +../components/unsemantic/assets/stylesheets/unsemantic-grid-responsive-tablet.css
\ No newline at end of file diff --git a/routes/.index.js.un~ b/routes/.index.js.un~ Binary files differnew file mode 100644 index 0000000..a69cf67 --- /dev/null +++ b/routes/.index.js.un~ diff --git a/routes/index.js b/routes/index.js new file mode 100644 index 0000000..59b0959 --- /dev/null +++ b/routes/index.js @@ -0,0 +1,15 @@ +var express = require('express'); +var router = express.Router(); + +/* GET home page. */ +router.get('/', function(req, res) { + res.render('index', { title: 'Express' }); +}); +router.get('/csstest', function(req, res) { + res.render('css_test.ejs', { title: 'Express' }); +}); +router.get('/something_else', function(req, res) { + res.json("whatever"); +}); + +module.exports = router; diff --git a/routes/user.js b/routes/user.js new file mode 100644 index 0000000..c00d7de --- /dev/null +++ b/routes/user.js @@ -0,0 +1,9 @@ +var express = require('express'); +var router = express.Router(); + +/* GET users listing. */ +router.get('/', function(req, res) { + res.send('respond with a resource'); +}); + +module.exports = router; diff --git a/views/.header.ejs.un~ b/views/.header.ejs.un~ Binary files differnew file mode 100644 index 0000000..acefa93 --- /dev/null +++ b/views/.header.ejs.un~ diff --git a/views/.index.ejs.un~ b/views/.index.ejs.un~ Binary files differnew file mode 100644 index 0000000..04ee118 --- /dev/null +++ b/views/.index.ejs.un~ diff --git a/views/css_test.ejs b/views/css_test.ejs new file mode 100644 index 0000000..94e96e6 --- /dev/null +++ b/views/css_test.ejs @@ -0,0 +1,28 @@ +<% include header %> +<div class="grid-container no-padding small-border no-overflow"> + <div class="grid-25 tall small-border"> + +<img src="http://i.asdf.us/im/e6/_1417140870.gif" style="" /> +<img src="http://i.asdf.us/im/e6/_1417140870.gif" style="" /> +<img src="http://i.asdf.us/im/e6/_1417140870.gif" style="" /> +<img src="http://i.asdf.us/im/e6/_1417140870.gif" style="" /> + + + + + I am 25% wide. + + </div> + <div class="grid-75"> + <img src="http://i.asdf.us/im/9c/GreenForestofFernsgreen198388111024768_1417157625.gif" style="" /> + <img src="http://i.asdf.us/im/9c/GreenForestofFernsgreen198388111024768_1417157625.gif" style="" /> + <img src="http://i.asdf.us/im/9c/GreenForestofFernsgreen198388111024768_1417157625.gif" style="" /> + <img src="http://i.asdf.us/im/9c/GreenForestofFernsgreen198388111024768_1417157625.gif" style="" /> + <img src="http://i.asdf.us/im/9c/GreenForestofFernsgreen198388111024768_1417157625.gif" style="" /> + <img src="http://i.asdf.us/im/9c/GreenForestofFernsgreen198388111024768_1417157625.gif" style="" /> + <img src="http://i.asdf.us/im/9c/GreenForestofFernsgreen198388111024768_1417157625.gif" style="" /> + I am 75% wide. + </div> +</div> + +<% include footer %> diff --git a/views/error.ejs b/views/error.ejs new file mode 100644 index 0000000..c2d4fa3 --- /dev/null +++ b/views/error.ejs @@ -0,0 +1,7 @@ +<% include header %> + + <%- message %> + <%- error.status %> + <%- error.stack %> + +<% include footer %>
\ No newline at end of file diff --git a/views/footer.ejs b/views/footer.ejs new file mode 100644 index 0000000..691287b --- /dev/null +++ b/views/footer.ejs @@ -0,0 +1,2 @@ +</body> +</html>
\ No newline at end of file diff --git a/views/header.ejs b/views/header.ejs new file mode 100644 index 0000000..e7317e4 --- /dev/null +++ b/views/header.ejs @@ -0,0 +1,12 @@ +<!doctype html> +<html lang="en"> +<head> + <meta charset="UTF-8"> + <meta name="viewport" content="width=device-width"> + <meta name="viewport" content=" width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1 " /> + <title><%-title %></title> + <link rel="stylesheet" href="/css/unsemantic-grid-responsive-tablet.css"> + <link rel="stylesheet" href="/css/style.css"> + <script src="http://localhost:35729/livereload.js"></script> +</head> +<body> diff --git a/views/index.ejs b/views/index.ejs new file mode 100644 index 0000000..94e96e6 --- /dev/null +++ b/views/index.ejs @@ -0,0 +1,28 @@ +<% include header %> +<div class="grid-container no-padding small-border no-overflow"> + <div class="grid-25 tall small-border"> + +<img src="http://i.asdf.us/im/e6/_1417140870.gif" style="" /> +<img src="http://i.asdf.us/im/e6/_1417140870.gif" style="" /> +<img src="http://i.asdf.us/im/e6/_1417140870.gif" style="" /> +<img src="http://i.asdf.us/im/e6/_1417140870.gif" style="" /> + + + + + I am 25% wide. + + </div> + <div class="grid-75"> + <img src="http://i.asdf.us/im/9c/GreenForestofFernsgreen198388111024768_1417157625.gif" style="" /> + <img src="http://i.asdf.us/im/9c/GreenForestofFernsgreen198388111024768_1417157625.gif" style="" /> + <img src="http://i.asdf.us/im/9c/GreenForestofFernsgreen198388111024768_1417157625.gif" style="" /> + <img src="http://i.asdf.us/im/9c/GreenForestofFernsgreen198388111024768_1417157625.gif" style="" /> + <img src="http://i.asdf.us/im/9c/GreenForestofFernsgreen198388111024768_1417157625.gif" style="" /> + <img src="http://i.asdf.us/im/9c/GreenForestofFernsgreen198388111024768_1417157625.gif" style="" /> + <img src="http://i.asdf.us/im/9c/GreenForestofFernsgreen198388111024768_1417157625.gif" style="" /> + I am 75% wide. + </div> +</div> + +<% include footer %> |
