1 /* global module:false */
2 module
.exports = function(grunt
) {
3 var port
= grunt
.option('port') || 8000;
4 var base
= grunt
.option('base') || '.';
6 // Project configuration
8 pkg
: grunt
.file
.readJSON('package.json'),
12 ' * reveal.js <%= pkg.version %> (<%= grunt.template.today("yyyy-mm-dd, HH:MM") %>)\n' +
13 ' * http://lab.hakim.se/reveal-js\n' +
16 ' * Copyright (C) 2016 Hakim El Hattab, http://hakim.se\n' +
21 files
: [ 'test/*.html' ]
26 banner
: '<%= meta.banner %>\n'
30 dest
: 'js/reveal.min.js'
37 'css/reveal.css': 'css/reveal.scss',
44 cwd
: 'css/theme/source',
62 'css/reveal.min.css': [ 'css/reveal.css' ]
89 files
: [ 'Gruntfile.js', 'js/reveal.js' ]
104 'reveal-js-presentation.zip': [
117 files
: [ 'Gruntfile.js', 'js/reveal.js' ],
121 files
: [ 'css/theme/source/*.scss', 'css/theme/template/*.scss' ],
125 files
: [ 'css/reveal.scss' ],
142 grunt
.loadNpmTasks( 'grunt-contrib-qunit' );
143 grunt
.loadNpmTasks( 'grunt-contrib-jshint' );
144 grunt
.loadNpmTasks( 'grunt-contrib-cssmin' );
145 grunt
.loadNpmTasks( 'grunt-contrib-uglify' );
146 grunt
.loadNpmTasks( 'grunt-contrib-watch' );
147 grunt
.loadNpmTasks( 'grunt-sass' );
148 grunt
.loadNpmTasks( 'grunt-contrib-connect' );
149 grunt
.loadNpmTasks( 'grunt-autoprefixer' );
150 grunt
.loadNpmTasks( 'grunt-zip' );
153 grunt
.registerTask( 'default', [ 'css', 'js' ] );
156 grunt
.registerTask( 'js', [ 'jshint', 'uglify', 'qunit' ] );
159 grunt
.registerTask( 'css-themes', [ 'sass:themes' ] );
161 // Core framework CSS
162 grunt
.registerTask( 'css-core', [ 'sass:core', 'autoprefixer', 'cssmin' ] );
165 grunt
.registerTask( 'css', [ 'sass', 'autoprefixer', 'cssmin' ] );
167 // Package presentation to archive
168 grunt
.registerTask( 'package', [ 'default', 'zip' ] );
170 // Serve presentation locally
171 grunt
.registerTask( 'serve', [ 'connect', 'watch' ] );
174 grunt
.registerTask( 'test', [ 'jshint', 'qunit' ] );