     watch:
       options:
         livereload: true
-      source:
-        files: '<%= path.source %>/**/*'
+      css:
+        files: [
+          '<%= path.source %>/**/*.css'
+          '<%= path.source %>/**/*.less'
+          '<%= path.source %>/**/*.s(a|c)ss'
+          '<%= path.source %>/**/*.styl'
+        ]
         tasks: [
-          'default'
+          'css'
+          'copy'
+          'notify:build'
+        ]
+      html:
+        files: [
+          '<%= path.source %>/**/*.html'
+          '<%= path.source %>/**/*.jade'
+        ]
+        tasks: [
+          'html'
+          'copy'
+          'notify:build'
+        ]
+      image:
+        files: [
+          '<%= path.source %>/**/img/**/*'
+        ]
+        tasks: [
+          'image'
+          'copy'
+          'notify:build'
+        ]
+      js:
+        files: [
+          '<%= path.source %>/**/*.coffee'
+          '<%= path.source %>/**/*.js'
+          '<%= path.source %>/**/*.litcoffee'
+        ]
+        tasks: [
+          'js'
+          'copy'
+          'notify:build'
+        ]
+      json:
+        files: '<%= path.source %>/**/*.json'
+        tasks: [
+          'json'
+          'html'
+          'copy'
+          'notify:build'
         ]
 
 

      'image'
      'js'
      'json'
      'copy:source'
      'copy:intermediate'
      'notify:build'
    ]


          '<%= path.source %>/img/sprites/*.png'
        ]
        destImg: '<%= path.source %>/img/sprite.png'
        destCSS: '<%= path.source %>/css/sprites.css'
        algorithm: 'binary-tree'
        padding: 1

