mirror of
https://github.com/koodiklinikka/koodiklinikka.fi.git
synced 2026-02-06 23:49:52 +00:00
80 lines
2.0 KiB
CoffeeScript
80 lines
2.0 KiB
CoffeeScript
path = require 'path'
|
|
gulp = require 'gulp'
|
|
gutil = require 'gulp-util'
|
|
jade = require 'gulp-jade'
|
|
stylus = require 'gulp-stylus'
|
|
CSSmin = require 'gulp-minify-css'
|
|
browserify = require 'gulp-browserify'
|
|
rename = require 'gulp-rename'
|
|
uglify = require 'gulp-uglify'
|
|
coffeeify = require 'coffeeify'
|
|
|
|
compileCoffee = (debug = false) ->
|
|
config = transform: ['coffeeify']
|
|
|
|
config =
|
|
debug: debug
|
|
transform: ['coffeeify']
|
|
shim:
|
|
jquery:
|
|
path: './vendor/jquery/jquery.js'
|
|
exports: '$'
|
|
|
|
bundle = gulp
|
|
.src('./src/coffee/main.coffee')
|
|
.pipe(browserify(config))
|
|
.pipe(rename('bundle.js'))
|
|
|
|
bundle.pipe(uglify()) unless debug
|
|
bundle.pipe gulp.dest('public/js/')
|
|
|
|
compileJade = (debug = false) ->
|
|
gulp
|
|
.src('src/jade/*.jade')
|
|
.pipe(jade(pretty: debug))
|
|
.pipe(gulp.dest('public/'))
|
|
|
|
compileStylus = (debug = false) ->
|
|
styles = gulp
|
|
.src('src/stylus/style.styl')
|
|
.pipe(stylus('include css': true))
|
|
|
|
styles.pipe(CSSmin()) unless debug
|
|
|
|
styles.pipe(gulp.dest('public/css/'))
|
|
|
|
# Build tasks
|
|
gulp.task "jade-production", -> compileJade()
|
|
gulp.task 'stylus-production', ->compileStylus()
|
|
gulp.task 'coffee-production', -> compileCoffee()
|
|
|
|
# Development tasks
|
|
gulp.task "jade", -> compileJade(true)
|
|
gulp.task 'stylus', -> compileStylus(true)
|
|
gulp.task 'coffee', -> compileCoffee(true)
|
|
|
|
gulp.task "server", ->
|
|
nodeStatic = require('node-static')
|
|
staticFiles = new nodeStatic.Server './public'
|
|
require('http').createServer (req, res) ->
|
|
req.addListener 'end', ->
|
|
staticFiles.serve req, res
|
|
req.resume()
|
|
.listen 9001
|
|
|
|
gulp.task "watch", ->
|
|
gulp.watch "src/coffee/*.coffee", ->
|
|
gulp.run "coffee"
|
|
|
|
gulp.watch "src/jade/*.jade", ->
|
|
gulp.run "jade"
|
|
|
|
gulp.watch "src/stylus/*.styl", ->
|
|
gulp.run "stylus"
|
|
|
|
gulp.task "build", ->
|
|
gulp.run "coffee-production", "jade-production", "stylus-production"
|
|
|
|
gulp.task "default", ->
|
|
gulp.run "coffee", "jade", "stylus", "watch", "server"
|