grunt-contrib (currently in alpha)
A collection of general use grunt tasks. All tasks are designed with cross platform support in mind and dependencies that can easily be managed through npm.
Getting Started
Install this grunt plugin next to your project's grunt.js gruntfile with: npm install grunt-contrib
Then add this line to your project's grunt.js
gruntfile:
grunt.loadNpmTasks('grunt-contrib');
Included Tasks
Clear files and folders.
Compile CoffeeScript files into JavaScript.
Compress files and folders using gzip or zip.
Copy files into another directory.
Compile handlebars templates to JST file.
Compile Jade templates to HTML.
Compile underscore templates to JST file.
Compile LESS files to CSS.
Minify CSS files.
Optimize RequireJS projects using r.js.
Compile Stylus files into CSS.
Compile YUIDoc Documentation.
Included Helpers
Unified options retrieval, will be replaced with grunt's built-in this.options
in the near future.
Bugs
Help us squash them by submitting an issue that describes how you encountered it; please be as specific as possible including operating system, node, grunt, and grunt-contrib versions.
Contributing
Checklist
- Ensure your task meets the submission guidelines.
- Ensure your task follows the code style guide.
- Submit your pull request against
master
, unless otherwise instructed. - Ensure your pull request only touches what your changing and that it's squashed (ie
git rebase
).
Submission Guidelines
- task should work out of box, cross platform, with a simple
npm install
- task should fill a general need and ideally be pure JavaScript
- task should include tests that cover, at minimal, its basic features
- task should be linted by running
grunt
at root of project - task should use any built-in helpers first for consistency
Code Style Guide
- code should be indented with 2 spaces
- double quotes should be used where feasible
- commas should be followed by a single space (function params, etc)
- variable declaration should include
var
, no multiple declarations
Tests
- tests should be added to the config in
test/grunt.js
- see existing tests for guidance
Currently, testing with grunt is a bit cumbersome--this will be addressed in a future release.
Running Tests
npm install grunt -g
npm install
npm test
Release History
see CHANGELOG.
License
Copyright (c) 2012 "Cowboy" Ben Alman & contributors.
Licensed under the MIT license.