From 7c9b3421a22594b95b6d4f8ec753ceb08289721a Mon Sep 17 00:00:00 2001 From: Hakim El Hattab Date: Sat, 4 May 2013 10:51:27 -0400 Subject: [PATCH] add package and serve grunt tasks (closes #437) --- Gruntfile.js | 28 ++++++++++++++++++++++++++++ package.json | 2 ++ 2 files changed, 30 insertions(+) diff --git a/Gruntfile.js b/Gruntfile.js index 6fa4014e..892469a4 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -75,6 +75,26 @@ module.exports = function(grunt) { files: [ 'Gruntfile.js', 'js/reveal.js' ] }, + connect: { + server: { + options: { + port: 8000, + base: '.' + } + } + }, + + zip: { + 'reveal-js-presentation.zip': [ + 'index.html', + 'css/**', + 'js/**', + 'lib/**', + 'images/**', + 'plugin/**' + ] + }, + watch: { main: { files: [ 'Gruntfile.js', 'js/reveal.js', 'css/reveal.css' ], @@ -94,6 +114,8 @@ module.exports = function(grunt) { grunt.loadNpmTasks( 'grunt-contrib-uglify' ); grunt.loadNpmTasks( 'grunt-contrib-watch' ); grunt.loadNpmTasks( 'grunt-contrib-sass' ); + grunt.loadNpmTasks( 'grunt-contrib-connect' ); + grunt.loadNpmTasks( 'grunt-zip' ); // Default task grunt.registerTask( 'default', [ 'jshint', 'cssmin', 'uglify' ] ); @@ -101,4 +123,10 @@ module.exports = function(grunt) { // Theme task grunt.registerTask( 'themes', [ 'sass' ] ); + // Package presentation to archive + grunt.registerTask( 'package', [ 'default', 'zip' ] ); + + // Serve presentation locally + grunt.registerTask( 'serve', [ 'connect', 'watch' ] ); + }; diff --git a/package.json b/package.json index 194bd6de..801c2968 100644 --- a/package.json +++ b/package.json @@ -32,6 +32,8 @@ "grunt-contrib-uglify": "~0.1.1", "grunt-contrib-watch": "~0.2.0", "grunt-contrib-sass": "~0.2.2", + "grunt-contrib-connect": "~0.2.0", + "grunt-zip": "~0.7.0", "grunt": "~0.4.0" }, "licenses": [