Skip to content
This repository has been archived by the owner on Nov 10, 2017. It is now read-only.

Commit

Permalink
Fixes #7 - Modularized components using browserify.
Browse files Browse the repository at this point in the history
Also, got rid of bower.
  • Loading branch information
n1k0 committed Jun 1, 2014
1 parent 3452372 commit 130a087
Show file tree
Hide file tree
Showing 30 changed files with 1,024 additions and 731 deletions.
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,2 @@
build
node_modules
bower_components
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,8 @@ To launch a local server with live reload:

$ npm start

Point your browser at localhost:4000 and start hacking.
Point your browser at [localhost:4000](http://localhost:4000) and start hacking
Kept files, a rebuild will be performed automatically in the background.

To build an optimized version of Kept:

Expand All @@ -32,7 +33,6 @@ The resulting files are then available in the `build` folder.

A [working demo](http://n1k0.github.io/kept/) is also available.


License
-------

Expand Down
29 changes: 0 additions & 29 deletions bower.json

This file was deleted.

89 changes: 41 additions & 48 deletions gulpfile.js
Original file line number Diff line number Diff line change
@@ -1,44 +1,43 @@
/* jshint node:true */

"use strict";

var gulp = require("gulp");
var react = require("gulp-react");
var plumber = require("gulp-plumber");
var uglify = require("gulp-uglify");
var concat = require("gulp-concat");
var browserify = require('gulp-browserify');
var uglify = require('gulp-uglify');
var rename = require('gulp-rename');
var connect = require("gulp-connect");
var deploy = require("gulp-gh-pages");

var opt = {
outputFolder: "build",

server:{
server: {
port: 4000,
livereload: 31357
},

fontAssets: [
"bower_components/bootstrap/fonts/*"
cssAssets: [
"src/css/bootstrap.min.css",
"src/css/kept.css"
],

cssAssets: [
"bower_components/bootstrap/dist/css/bootstrap.min.css",
"bower_components/bootstrap/dist/css/bootstrap.min.css",
"css/kept.css"
fontAssets: [
"src/fonts/*"
],

jsAssets: [
"bower_components/react/react.min.js",
"bower_components/react-bootstrap/react-bootstrap.min.js",
"bower_components/marked/lib/marked.js",
"src/js/**/*.*"
],

htmlAssets: [
"index.html"
"src/index.html"
],

mainJs:{
src: "src/kept.jsx",
dist: "dist/js/kept.js"
mainJs: {
src: "src/js/kept.jsx",
dest: "js/kept.js"
}
};

Expand All @@ -47,55 +46,45 @@ var opt = {
*/
gulp.task("assets", [
"assets:html",
"assets:js",
"assets:fonts",
"assets:css"
"assets:css",
"assets:js"
]);

gulp.task("assets:html", function() {
return gulp.src(opt.htmlAssets)
.pipe(gulp.dest(opt.outputFolder));
});

gulp.task("assets:fonts", function() {
return gulp.src(opt.fontAssets)
.pipe(gulp.dest(opt.outputFolder + "/fonts"));
});

gulp.task("assets:js", function() {
return gulp.src(opt.jsAssets)
.pipe(gulp.dest(opt.outputFolder + "/js/lib"));
return gulp.src(opt.mainJs.src, {read: false})
.pipe(browserify({
transform: ["reactify"],
extensions: [".jsx"]
}))
.pipe(rename("kept.js"))
.pipe(gulp.dest(opt.outputFolder + "/js"));
});

gulp.task("assets:css", function() {
return gulp.src(opt.cssAssets)
.pipe(gulp.dest(opt.outputFolder + "/css"));
});


gulp.task("transpile", function() {
return gulp.src(opt.mainJs.src)
.pipe(plumber())
.pipe(react())
.pipe(gulp.dest(opt.outputFolder + "/js"));
});

gulp.task("uglify", ["transpile"], function() {
return gulp.src(opt.mainJs.dist)
.pipe(plumber())
.pipe(uglify())
.pipe(gulp.dest(opt.outputFolder + "/js"));
gulp.task("assets:fonts", function() {
return gulp.src(opt.fontAssets)
.pipe(gulp.dest(opt.outputFolder + "/fonts"));
});

/**
* Server task
*/
gulp.task("server", function() {
connect.server({
return connect.server({
root: opt.outputFolder,
port: opt.server.port,
livereload: {
port:opt.livereload
port: opt.livereload
}
});
});
Expand All @@ -104,21 +93,23 @@ gulp.task("server", function() {
* Watch task
* Launch a server with livereload
*/
gulp.task("watch", ["assets", "transpile"], function() {
gulp.watch(opt.cssAssets, ["assets:css"]);
gulp.watch(opt.jsAssets, ["assets:js"]);
gulp.task("watch", ["assets"], function() {
gulp.watch(opt.cssAssets, ["assets:css"]);
gulp.watch(opt.fontAssets, ["assets:fonts"]);
gulp.watch(opt.jsAssets, ["assets:js"]);
gulp.watch(opt.htmlAssets, ["assets:html"]);
gulp.watch(opt.mainJs.src, ["transpile"]);

gulp.watch([opt.outputFolder + "/**/*.*"])
.on("change", function() {
// trigger the live reload server
gulp.src("").pipe(connect.reload());
});
});

gulp.task("dist", ["assets", "transpile", "uglify"]);
gulp.task("default", ["server", "watch"]);
gulp.task("dist", ["assets"], function() {
return gulp.src("build/" + opt.mainJs.dest)
.pipe(uglify())
.pipe(gulp.dest(opt.outputFolder + "/js"));
});

/**
* Deploy to gh-pages
Expand All @@ -127,3 +118,5 @@ gulp.task("deploy", ["dist"], function() {
gulp.src("./build/**/*")
.pipe(deploy("git@github.com:n1k0/kept.git"));
});

gulp.task("default", ["server", "watch"]);
14 changes: 8 additions & 6 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@
"scripts": {
"deploy": "gulp deploy",
"dist": "gulp dist",
"postinstall": "bower install",
"start": "gulp",
"test": "echo \"Error: no test specified\" && exit 1"
},
Expand All @@ -26,12 +25,15 @@
},
"homepage": "https://github.com/n1k0/kept",
"dependencies": {
"bower": "^1.3.3",
"gulp": "^3.6.2",
"gulp-react": "^0.3.3",
"gulp-plumber": "^0.6.2",
"gulp-uglify": "^0.3.0",
"gulp-browserify": "^0.5.0",
"gulp-concat": "^2.2.0",
"gulp-connect": "^2.0.5",
"gulp-gh-pages": "^0.2.1"
"gulp-gh-pages": "^0.2.1",
"gulp-rename": "^1.2.0",
"marked": "^0.3.2",
"react": "^0.10.0",
"react-bootstrap": "^0.10.2",
"reactify": "^0.13.1"
}
}
7 changes: 7 additions & 0 deletions src/css/bootstrap.min.css

Large diffs are not rendered by default.

File renamed without changes.
Binary file added src/fonts/glyphicons-halflings-regular.eot
Binary file not shown.
Loading

0 comments on commit 130a087

Please sign in to comment.