Skip to content

Instantly share code, notes, and snippets.

@chrsgrffth
Last active May 24, 2016 23:51
Show Gist options
  • Save chrsgrffth/1a7c1aca6b82edbd88b7bb8a3b913002 to your computer and use it in GitHub Desktop.
Save chrsgrffth/1a7c1aca6b82edbd88b7bb8a3b913002 to your computer and use it in GitHub Desktop.
Gulpfile/package.json for Statamic Themes
'use strict';
var gulp = require('gulp'),
sass = require('gulp-sass'),
sassGlob = require('gulp-sass-glob'),
concat = require('gulp-concat'),
browserify = require('browserify'),
coffeeify = require('coffeeify'),
uglify = require('gulp-uglify'),
notify = require('gulp-notify'),
resolutions = require('browserify-resolutions'),
buff = require('vinyl-buffer'), // to transform the browserify results into a 'stream'
source = require('vinyl-source-stream'),
sourcemaps = require('gulp-sourcemaps'),
// This must match the name of the theme folder.
theme = 'ink';
gulp.task('styles', function () {
gulp.src('./sass/' + theme + '.scss')
.pipe(sassGlob())
.pipe(sass().on('error', sass.logError))
.pipe(concat(theme + '.css'))
.pipe(gulp.dest('css/'));
});
gulp.task('scripts', function() {
browserify({
entries: ['./coffee/ink.coffee'],
debug: true,
extensions: ['coffee'],
transform: ['coffeeify']
})
.bundle()
.pipe(source(theme + '.js'))
.pipe(buff())
.pipe(sourcemaps.init({
loadMaps: true,
debug: true
}))
.pipe(uglify())
.pipe(sourcemaps.write('./'))
.pipe(gulp.dest('./js'))
.pipe(notify(theme + '.js compiled.'));
})
gulp.task('compress', function() {
gulp.src('js/compiled/' + theme + '.js')
.pipe(minify())
.pipe(gulp.dest('js/'))
});
gulp.task('default', ['styles', 'scripts'], function() {
gulp.watch('sass/**', ['styles']);
gulp.watch('coffee/**', ['scripts']);
});
{
"private": true,
"dependencies": {
"clipboard": "^1.5.10",
"gsap": "^1.18.4",
"jquery": "^2.2.3",
"scrollmagic": "^2.0.5"
},
"devDependencies": {
"browserify": "^13.0.1",
"browserify-resolutions": "^1.1.0",
"coffeeify": "^2.0.1",
"gulp": "^3.9.1",
"gulp-browserify": "^0.5.1",
"gulp-coffeeify": "^0.1.8",
"gulp-concat": "^2.6.0",
"gulp-dedupe": "0.0.2",
"gulp-extract-sourcemap": "^0.1.6",
"gulp-minify": "0.0.11",
"gulp-notify": "^2.2.0",
"gulp-sass": "^2.3.1",
"gulp-sass-glob": "^1.0.6",
"gulp-sourcemaps": "^1.6.0",
"gulp-uglify": "^1.5.3",
"vinyl-buffer": "^1.0.0",
"vinyl-source-stream": "^1.1.0"
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment