Skip to content
This repository has been archived by the owner on Jul 31, 2020. It is now read-only.

Commit

Permalink
feat: add gulp tasks to bootstrap server
Browse files Browse the repository at this point in the history
  • Loading branch information
Pierre-RA committed Jan 23, 2017
1 parent 88f4015 commit d9c6bd2
Show file tree
Hide file tree
Showing 6 changed files with 123 additions and 0 deletions.
5 changes: 5 additions & 0 deletions .babelrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"presets": [
"es2015"
]
}
1 change: 1 addition & 0 deletions .env
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
PORT=5000
73 changes: 73 additions & 0 deletions gulpfile.babel.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
'use strict';

import dotenv from 'dotenv';
import gulp from 'gulp';
import del from 'del';
import gulpLoadPlugins from 'gulp-load-plugins';
import browserSync from 'browser-sync';

const $ = gulpLoadPlugins();
const SERVER = 'dist/server';
browserSync.create();
dotenv.config({silent: true});

/**
* Task jshint
* Use js lint
*/
gulp.task('jshint', ['jscs'], () => {
return gulp.src([
'server/**/*.js',
'gulfile.js',
])
.pipe($.jshint('.jshintrc'))
.pipe($.jshint.reporter('default'))
.pipe($.jshint.reporter('fail'));
});

/**
* Task jscs
* Use js cs lint
*/
gulp.task('jscs', () => {
return gulp.src([
'server/**/*.js',
'gulfile.js',
])
.pipe($.jscs('.jscsrc'))
.pipe($.jscs.reporter())
.pipe($.jscs.reporter('fail'));
});

/**
* Task reload
* reload the browser after executing default
*/
gulp.task('reload', ['default'], () => {
browserSync.reload();
});

/**
* Task serve
* launch an express server
*/
gulp.task('serve', () => {
const server = $.liveServer.new('server/server.js');
server.start();
});

/**
* Task clean
* Remove dist directory
*/
gulp.task('clean', () => {
return del([
SERVER,
]);
});

/**
* Task test
* Build the project and test for it's consistency
*/
gulp.task('test', ['jscs']);
16 changes: 16 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
"description": "The nutritional fact database's website",
"main": "index.js",
"scripts": {
"start": "gulp serve",
"test": "gulp test"
},
"repository": {
Expand All @@ -21,6 +22,21 @@
},
"homepage": "https://github.com/anthillsolutions/nutrient#readme",
"dependencies": {
"dotenv": "^4.0.0",
"express": "^4.14.0"
},
"devDependencies": {
"babel-core": "^6.22.1",
"babel-preset-es2015": "^6.22.0",
"bower": "^1.8.0",
"browser-sync": "^2.18.6",
"del": "^2.2.2",
"gulp": "^3.9.1",
"gulp-batch": "^1.0.5",
"gulp-jscs": "^4.0.0",
"gulp-jshint": "^2.0.4",
"gulp-live-server": "0.0.30",
"gulp-load-plugins": "^1.4.0",
"jshint": "^2.9.4"
}
}
13 changes: 13 additions & 0 deletions server/routes/index.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
'use strict';

var express = require('express');
var router = express.Router();

/* GET home page. */
router.get('/', function(req, res, next) {
res.json({
message: 'Welcome to Nutrient!'
});
});

module.exports = router;
15 changes: 15 additions & 0 deletions server/server.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
'use strict';

var express = require('express');
var dotenv = require('dotenv');
dotenv.config({silent: true});

var app = express();
var PORT = process.env.PORT || 3000;
var index = require('./routes/index.js');

app.use(index);

app.listen(PORT, () => {
console.log('app listening on port ' + PORT + '!');
});

0 comments on commit d9c6bd2

Please sign in to comment.