{"size": 1930, "ext": "js", "max_stars_repo_path": "Gruntfile.js", "max_stars_repo_name": "begriffs/groupthink", "max_stars_repo_stars_event_min_datetime": "2015-04-08T07:51:01.000Z", "max_stars_repo_stars_event_max_datetime": "2016-06-28T06:49:48.000Z", "max_issues_repo_path": "Gruntfile.js", "max_issues_repo_name": "begriffs/groupthink", "max_issues_repo_issues_event_min_datetime": "2016-06-27T12:55:40.000Z", "max_issues_repo_issues_event_max_datetime": "2016-06-27T17:55:02.000Z", "max_forks_repo_path": "Gruntfile.js", "max_forks_repo_name": "begriffs/groupthink", "max_forks_repo_forks_event_min_datetime": null, "max_forks_repo_forks_event_max_datetime": null}
{"max_stars_count": 2, "max_issues_count": 1, "max_forks_count": null, "avg_line_length": 27.1830985915, "max_line_length": 94, "alphanum_fraction": 0.5284974093}
module.exports = function(grunt) {

  // Project configuration.
  grunt.initConfig({
    pkg: grunt.file.readJSON('package.json'),
    jshint: {
      all: ['*.js', 'public/scripts/main.js']
    },
    requirejs: {
      compile: {
        options: {
          name: '../bower/almond/almond',
          include: "main",
          baseUrl: "public/scripts",
          mainConfigFile: "public/scripts/main.js",
          out: "public/scripts/optimized.js",
          uglify: {
            toplevel: true,
            ascii_only: true,
            max_line_length: 1000,

            //How to pass uglifyjs defined symbols for AST symbol replacement,
            //see "defines" options for ast_mangle in the uglifys docs.
            defines: {
                DEBUG: ['name', 'false']
            },

            //Custom value supported by r.js but done differently
            //in uglifyjs directly:
            //Skip the processor.ast_mangle() part of the uglify call (r.js 2.0.5+)
            no_mangle: true
          }
        }
      }
    },
    stylus: {
      compile: {
        files: {
          'public/style/main.css': [
            'views/style/reset.styl',
            'views/style/mixins.styl',
            'views/style/main.styl'
          ]
        }
      }
    },
    watch: {
      lint: {
        files: ['*.js', 'public/scripts/main.js'],
        tasks: 'jshint'
      },
      compile_js: {
        files: ['*.js', 'public/scripts/main.js'],
        tasks: 'requirejs'
      },
      compile_stylus: {
        files: ['views/style/reset.styl', 'views/style/mixins.styl', 'views/style/main.styl'],
        tasks: 'stylus'
      }
    }
  });

  grunt.loadNpmTasks('grunt-contrib-jshint');
  grunt.loadNpmTasks('grunt-contrib-requirejs');
  grunt.loadNpmTasks('grunt-contrib-stylus');
  grunt.loadNpmTasks('grunt-contrib-watch');

  grunt.registerTask('precompile', ['jshint', 'stylus', 'requirejs']);

};
