Advertisement
Guest User

Untitled

a guest
Jul 26th, 2014
216
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.54 KB | None | 0 0
  1. module.exports = function(grunt) {
  2.  
  3. grunt.initConfig({
  4. pkg: grunt.file.readJSON('package.json'),
  5.  
  6. concat: {
  7. dist: {
  8. src: [
  9. 'dev/js/libs/*.js',
  10. 'dev/js/script.js'
  11. ],
  12. dest: 'dev/js/main.js'
  13. }
  14. },
  15.  
  16. uglify: {
  17. build: {
  18. src: 'dev/js/main.js',
  19. dest: 'assets/script.js'
  20. }
  21. },
  22.  
  23. imagemin: {
  24. dynamic: {
  25. files: [{
  26. expand: true,
  27. cwd: 'image/',
  28. src: ['**/*.{png,jpg,gif}'],
  29. dest: 'image/'
  30. }]
  31. }
  32. },
  33.  
  34. sass: {
  35. dist: {
  36. options: {
  37. style: 'expanded'
  38. },
  39. files: {
  40. 'dev/css/style.css': 'dev/sass/style.sass'
  41. }
  42. }
  43. },
  44.  
  45. autoprefixer: {
  46. options: {
  47. browsers: ['last 2 versions']
  48. },
  49. multiple_files: {
  50. expand: true,
  51. flatten: true,
  52. src: 'dev/css/style.css',
  53. dest: 'dev/css/prefixed/'
  54. }
  55. },
  56.  
  57. cssmin: {
  58. combine: {
  59. files: {
  60. 'assets/style.css': 'dev/css/prefixed/style.css'
  61. }
  62. }
  63. },
  64.  
  65. htmlmin: {
  66. dist: {
  67. options: {
  68. removeComments: true,
  69. collapseWhitespace: true
  70. },
  71. files: {
  72. 'index.html': 'dev/index.html'
  73. }
  74. }
  75. },
  76.  
  77. compress: {
  78. main: {
  79. options: {
  80. mode: 'gzip'
  81. },
  82. expand: true,
  83. cwd: 'assets/',
  84. src: ['**/*'],
  85. dest: 'assets/'
  86. }
  87. },
  88.  
  89. watch: {
  90. options: {
  91. livereload: true,
  92. },
  93. scripts: {
  94. files: ['dev/js/*.js'],
  95. tasks: ['concat', 'uglify'],
  96. options: {
  97. spawn: false
  98. }
  99. },
  100. images: {
  101. files: ['image/**/*.{png,jpg,gif}', 'image/*.{png,jpg,gif}'],
  102. tasks: ['imagemin'],
  103. options: {
  104. spawn: false
  105. }
  106. },
  107. css: {
  108. files: ['dev/sass/*.sass'],
  109. tasks: ['sass', 'autoprefixer', 'cssmin'],
  110. options: {
  111. spawn: false
  112. }
  113. },
  114. html: {
  115. files: ['dev/*.html'],
  116. tasks: ['htmlmin'],
  117. options: {
  118. spawn: false
  119. }
  120. }
  121. },
  122.  
  123. connect: {
  124. server: {
  125. options: {
  126. port: 8000,
  127. base: './'
  128. }
  129. }
  130. }
  131. });
  132.  
  133. require('load-grunt-tasks')(grunt);
  134.  
  135. grunt.registerTask('default', ['concat', 'uglify', 'imagemin', 'sass', 'autoprefixer', 'cssmin', 'htmlmin', 'compress']);
  136.  
  137. grunt.registerTask('dev', ['concat', 'uglify', 'imagemin', 'sass', 'autoprefixer', 'cssmin', 'htmlmin', 'compress', 'connect', 'watch']);
  138. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement