<commit_before>module.exports = function(grunt) {
  grunt.initConfig({
    react: {
      test: {
        files: {
          'test/js/specs.js': 'test/jsx/specs.jsx'
        }
      }
    },
    browserify: {
      release: {
        options: {
          debug: false,
          transform: ['reactify']
        },
        files: {
          'release/eventful-react.js': 'lib/eventful-react.js'
        }
      }
    },
    mochaTest: {
      test: {
        options: {
          reporter: 'spec', 
        },
        src: ['test/js/specs.js']
      }
    },
    watch: {
      test: {
        files: ['test/jsx/**/*','lib/**/*'],
        tasks: ['react:test','mochaTest:test']
      }
    }
  });

  grunt.loadNpmTasks('grunt-react');
  grunt.loadNpmTasks('grunt-mocha-test');
  grunt.loadNpmTasks('grunt-contrib-watch');
  grunt.loadNpmTasks('grunt-browserify');

  grunt.registerTask('test',['watch:test']);
  grunt.registerTask('release',['browserify:release']);
};<commit_msg>added grunt task to build demos<commit_after>module.exports = function(grunt) {
  grunt.initConfig({
    react: {
      test: {
        files: {
          'test/js/specs.js': 'test/jsx/specs.jsx'
        }
      }
    },
    browserify: {
      release: {
        options: {
          debug: false,
          transform: ['reactify']
        },
        files: {
          'release/eventful-react.js': 'lib/eventful-react.js'
        }
      },
      demo: {
        options: {
          debug: false,
          transform: ['reactify']
        },
        files: {
          'demo/vanilla/script.js': 'demo/vanilla/script.jsx',
          'demo/eventful/script.js': 'demo/eventful/script.jsx'
        }
      }
    },
    mochaTest: {
      test: {
        options: {
          reporter: 'spec',
        },
        src: ['test/js/specs.js']
      }
    },
    watch: {
      test: {
        files: ['test/jsx/**/*','lib/**/*'],
        tasks: ['react:test','mochaTest:test']
      },
      demo: {
        files: ['demo/**/*.jsx'],
        tasks: ['browserify:demo']
      }
    }
  });

  grunt.loadNpmTasks('grunt-react');
  grunt.loadNpmTasks('grunt-mocha-test');
  grunt.loadNpmTasks('grunt-contrib-watch');
  grunt.loadNpmTasks('grunt-browserify');

  grunt.registerTask('test',['react:test','mochaTest:test']);
  grunt.registerTask('test:watch',['watch:test']);
  grunt.registerTask('demo',['browserify:demo']);
  grunt.registerTask('demo:watch',['watch:demo']);
  grunt.registerTask('release',['browserify:release']);
};

{'fraction_non_alphanumeric': 0.1873003194888179, 'fraction_numerical': 0.0, 'mean_word_length': 1.9856972586412396, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5121212', 'n_tokens_mistral': 867, 'n_tokens_neox': 858, 'n_words': 98}