diff --git a/Gruntfile.js b/Gruntfile.js new file mode 100644 index 0000000000000000000000000000000000000000..3848bc928afb91008c981a30a6c21a8aee36bd56 --- /dev/null +++ b/Gruntfile.js @@ -0,0 +1,63 @@ +module.exports = function (grunt) { + "use strict"; + + // Project configuration. + grunt.initConfig({ + pkg: grunt.file.readJSON('package.json'), + uglify: { + options: { + banner: '/*! <%= pkg.name %> <%= grunt.template.today("yyyy-mm-dd") %> */\n', + }, + jio: { + src: 'jio.js', // '<%= pkg.name %>.js' + dest: 'jio.min.js', + } + }, + jslint: { + jio: { + src: ['src/jio/**/*.js'], + exclude: ['src/jio/intro.js', 'src/jio/outro.js'], + options: { + errorsOnly: true, + } + }, + tests: { + src: ['test/**/*.js'], + options: { + errorsOnly: true, + } + } + // queries: { + // src: ['src/queries/**/*.js'], + // exclude: ['src/queries/begin.js', 'src/queries/end.js'] + // } + }, + concat: { + jio: { + //banner: 'src/jio/intro.js', + //footer: 'src/j', + src: [ + 'src/jio/intro.js', + 'src/jio/core/**/*.js', + 'src/jio/features/**/*.js', + 'src/jio/outro.js', + ], + dest: 'jio.js', + } + }, + qunit: { + files: ['test/tests.html'], // grunt doesn't like requirejs + }, + }); + + grunt.loadNpmTasks('grunt-jslint'); + grunt.loadNpmTasks('grunt-contrib-concat'); + grunt.loadNpmTasks('grunt-contrib-uglify'); + grunt.loadNpmTasks('grunt-contrib-qunit'); + + grunt.registerTask('default', ['jslint', 'concat', 'uglify']); //, 'qunit']); + + grunt.registerTask('lint', ['jslint']); + grunt.registerTask('build', ['concat', 'uglify']); + grunt.registerTask('test', ['jslint', 'qunit']); +}; diff --git a/package.json b/package.json new file mode 100644 index 0000000000000000000000000000000000000000..e3cc4ac7911f0e606c599352df412c3ff5a062fe --- /dev/null +++ b/package.json @@ -0,0 +1,4 @@ +{ + "name": "JIO", + "version": "0.2.0" +}