Gruntfile.coffee 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. module.exports = (grunt) ->
  2. grunt.initConfig
  3. pkg: grunt.file.readJSON 'package.json'
  4. concat:
  5. js:
  6. options:
  7. separator: "\n"
  8. src: [
  9. 'bower_components/jQuery/dist/jquery.min.js'
  10. 'bower_components/js-md5/js/md5.min.js'
  11. 'bower_components/mousetrap/mousetrap.min.js'
  12. 'bower_components/mousetrap/plugins/global-bind/mousetrap-global-bind.min.js'
  13. '../assets/js/*.js'
  14. ]
  15. dest: '../assets/min/main.js'
  16. css:
  17. options:
  18. separator: "\n"
  19. src: [
  20. '../assets/css/*.css'
  21. ]
  22. dest: '../assets/min/main.css'
  23. uglify:
  24. assets:
  25. options:
  26. banner: '/*! <%= pkg.name %> <%= pkg.version %> | <%= grunt.template.today("yyyy-mm-dd") %> */\n'
  27. files:
  28. '../assets/min/main.js': '../assets/min/main.js'
  29. cssmin:
  30. assets:
  31. options:
  32. banner: '/*! <%= pkg.name %> <%= pkg.version %> | <%= grunt.template.today("yyyy-mm-dd") %> */'
  33. files:
  34. '../assets/min/main.css': '../assets/min/main.css'
  35. watch:
  36. js:
  37. files: [
  38. '../assets/js/*.js'
  39. ]
  40. tasks: ['js']
  41. options:
  42. spawn: false
  43. interrupt: true
  44. css:
  45. files: [
  46. '../assets/css/*.css'
  47. ]
  48. tasks: ['css']
  49. options:
  50. spawn: false
  51. interrupt: true
  52. require('load-grunt-tasks')(grunt)
  53. grunt.registerTask 'default', ->
  54. grunt.task.run [
  55. 'js'
  56. 'css'
  57. ]
  58. grunt.registerTask 'js', [
  59. 'concat:js'
  60. 'uglify:assets'
  61. ]
  62. grunt.registerTask 'css', [
  63. 'concat:css'
  64. 'cssmin:assets'
  65. ]