diff --git a/.eslintrc b/.eslintrc
index ee012e7..0b2a408 100644
--- a/.eslintrc
+++ b/.eslintrc
@@ -1,28 +1,6 @@
{
- "parser": "babel-eslint",
- "plugins": [
- "react"
- ],
- "ecmaFeatures": {
- "modules": true,
- "jsx": true
- },
- "env": {
- "browser": true,
- "es6": true,
- "node": true,
- "mocha": true
- },
+ "extends": "airbnb",
"rules": {
- "quotes": [
- 2,
- "single"
- ],
- "eqeqeq": [
- 2,
- "smart"
- ],
- "keyword-spacing": 2,
- "no-console": 1
+ "comma-dangle": [2, "never"]
}
}
diff --git a/gulpfile.babel.js b/gulpfile.babel.js
index 9718922..cfdc4a8 100644
--- a/gulpfile.babel.js
+++ b/gulpfile.babel.js
@@ -25,7 +25,7 @@ import ghPages from 'gulp-gh-pages';
const paths = {
bundle: 'app.js',
- srcJsx: 'src/Index.js',
+ entry: 'src/Index.js',
srcCss: 'src/**/*.scss',
srcImg: 'src/images/**',
srcLint: ['src/**/*.js', 'test/**/*.js'],
@@ -36,7 +36,7 @@ const paths = {
};
const customOpts = {
- entries: [paths.srcJsx],
+ entries: [paths.entry],
debug: true
};
@@ -55,17 +55,17 @@ gulp.task('browserSync', () => {
});
gulp.task('watchify', () => {
- let bundler = watchify(browserify(opts));
+ const bundler = watchify(browserify(opts));
function rebundle() {
return bundler.bundle()
.on('error', notify.onError())
.pipe(source(paths.bundle))
.pipe(buffer())
- .pipe(sourcemaps.init({loadMaps: true}))
+ .pipe(sourcemaps.init({ loadMaps: true }))
.pipe(sourcemaps.write('.'))
.pipe(gulp.dest(paths.distJs))
- .pipe(reload({stream: true}));
+ .pipe(reload({ stream: true }));
}
bundler.transform(babelify)
@@ -74,12 +74,12 @@ gulp.task('watchify', () => {
});
gulp.task('browserify', () => {
- browserify(paths.srcJsx, {debug: true})
+ browserify(paths.entry, { debug: true })
.transform(babelify)
.bundle()
.pipe(source(paths.bundle))
.pipe(buffer())
- .pipe(sourcemaps.init({loadMaps: true}))
+ .pipe(sourcemaps.init({ loadMaps: true }))
.pipe(uglify())
.pipe(sourcemaps.write('.'))
.pipe(gulp.dest(paths.distJs));
@@ -87,17 +87,17 @@ gulp.task('browserify', () => {
gulp.task('styles', () => {
gulp.src(paths.srcCss)
- .pipe(rename({extname: ".css"}))
+ .pipe(rename({ extname: '.css' }))
.pipe(sourcemaps.init())
.pipe(postcss([vars, extend, nested, autoprefixer, cssnano]))
.pipe(sourcemaps.write('.'))
.pipe(gulp.dest(paths.dist))
- .pipe(reload({stream: true}));
+ .pipe(reload({ stream: true }));
});
gulp.task('htmlReplace', () => {
gulp.src('index.html')
- .pipe(htmlReplace({css: 'styles/main.css', js: 'js/app.js'}))
+ .pipe(htmlReplace({ css: 'styles/main.css', js: 'js/app.js' }))
.pipe(gulp.dest(paths.dist));
});
@@ -105,7 +105,7 @@ gulp.task('images', () => {
gulp.src(paths.srcImg)
.pipe(imagemin({
progressive: true,
- svgoPlugins: [{removeViewBox: false}],
+ svgoPlugins: [{ removeViewBox: false }],
use: [pngquant()]
}))
.pipe(gulp.dest(paths.distImg));
@@ -119,11 +119,11 @@ gulp.task('lint', () => {
gulp.task('watchTask', () => {
gulp.watch(paths.srcCss, ['styles']);
- gulp.watch(paths.srcJsx, ['lint']);
+ gulp.watch(paths.srcLint, ['lint']);
});
-gulp.task('deploy', function() {
- return gulp.src(paths.distDeploy)
+gulp.task('deploy', () => {
+ gulp.src(paths.distDeploy)
.pipe(ghPages());
});
diff --git a/package.json b/package.json
index 70b661e..a1e2fc2 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "react-starterify",
- "version": "2.2.1",
+ "version": "2.3.0",
"description": "React JS application skeleton using Browserify and other awesome tools",
"main": "app.js",
"repository": {
@@ -56,7 +56,9 @@
"browser-sync": "^2.9.1",
"browserify": "^13.0.0",
"cssnano": "^3.0.0",
- "eslint-plugin-react": "^4.1.0",
+ "eslint": "^2.3.0",
+ "eslint-config-airbnb": "^6.1.0",
+ "eslint-plugin-react": "^4.2.1",
"gulp": "^3.9.0",
"gulp-eslint": "^2.0.0",
"gulp-gh-pages": "^0.5.4",
@@ -68,7 +70,7 @@
"gulp-sourcemaps": "^1.5.2",
"gulp-uglify": "^1.4.0",
"imagemin-pngquant": "^4.2.0",
- "lodash": "^4.0.0",
+ "lodash": "^4.6.0",
"postcss-nested": "^1.0.0",
"postcss-simple-extend": "^1.0.0",
"postcss-simple-vars": "^1.0.0",
diff --git a/src/Index.js b/src/Index.js
index 7ac8658..b8f3051 100644
--- a/src/Index.js
+++ b/src/Index.js
@@ -1,6 +1,6 @@
import React from 'react';
-import {render} from 'react-dom';
-import {Router, Route, hashHistory} from 'react-router';
+import { render } from 'react-dom';
+import { Router, Route, hashHistory } from 'react-router';
import App from './components/App';
import PoweredBy from './components/Powered-by';
import About from './components/About';
@@ -10,8 +10,8 @@ window.React = React;
render(
(
React Starterify aims to give you a good starting point for your projects.
-If you're looking for a minimal ES6 (ES2015) React JS starter with nice shallow rendering test examples, this is probably for you.
-React Starterify aims to give you a good starting point for your projects.
+If you're looking for a minimal ES6 (ES2015) React JS starter + with nice shallow rendering test examples, this is probably for you.
+