module.exports = function(grunt) { // Project configuration. grunt.initConfig({ pkg: grunt.file.readJSON('package.json'), concat: { css: { options: { separator: "\n" }, src: [ "public/assets/css/css.css", ], dest: 'public/assets/app.css', }, }, uglify: { options: { banner: '/* panda ~ bamboo */\n' }, index: { src: 'public/assets/app.concat.js', dest: 'public/assets/app.min.js' } }, clean: { release: [ "public/assets/app.concat.js", "tmp/" ], }, watch: { scripts: { files: ['public/**/*.js'], tasks: ['concat_sourcemap'], options: { spawn: false, }, }, }, concat_sourcemap: { options: { separator: "\n;\n" }, target: { files: { 'public/assets/app.concat.js': [ "public/assets/js/vendor/jQuery-3.1.1.min.js", "public/assets/js/vendor/dataUriToBlob.js", "public/assets/js/vendor/fastclick.js", "public/assets/js/vendor/history.min.js", "public/assets/js/vendor/loader.js", "public/assets/js/vendor/lodash.min.js", "public/assets/js/vendor/oktween.js", "public/assets/js/vendor/parser.js", "public/assets/js/vendor/range-touch.js", "public/assets/js/vendor/util.js", "public/assets/js/vendor/view/View.js", "public/assets/js/vendor/view/Router.js", "public/assets/js/lib/_router.js", "public/assets/js/lib/ascii/color.js", "public/assets/js/lib/ascii/photo.js", "public/assets/js/lib/views/HeaderView.js", "public/assets/js/lib/views/LinksView.js", "public/assets/js/lib/views/PhotoView.js", "public/assets/js/lib/views/UploadView.js", "public/assets/js/lib/views/HomeView.js", "public/assets/js/app.js", ] }, } }, }); // Load tasks that we'll be using grunt.loadNpmTasks('grunt-contrib-concat'); grunt.loadNpmTasks('grunt-contrib-uglify'); grunt.loadNpmTasks('grunt-contrib-clean'); grunt.loadNpmTasks('grunt-contrib-watch'); grunt.loadNpmTasks('grunt-concat-sourcemap'); // grunt.loadNpmTasks('grunt-contrib-copy'); // Default task(s). grunt.registerTask('default', ['concat_sourcemap', 'uglify']); };