Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Newer
Older
100644 72 lines (52 sloc) 5.811 kB
0493335 @cowboy Work in progress.
authored
1 # grunt
af4afd2 @cowboy Readme, docs and description "tagline" tweaks.
authored
2 Grunt is a task-based command line build tool for JavaScript projects.
469bda8 @cowboy Updating Readme. Lots more to write, but it's a start.
authored
3
af4afd2 @cowboy Readme, docs and description "tagline" tweaks.
authored
4 _Grunt is currently in beta. While I'm already using it on multiple projects, it might have a minor issue or two. And things might change before its final release, based on your feedback. Please try it out in a project, and [make suggestions][issues] or [report bugs][issues]!_
5
f8d2662 @cowboy Updating readme to make it a little more awesome.
authored
6 ## Getting started
59f8578 @cowboy Updating some docs to make them more awesome.
authored
7 Be sure to read the [getting started guide](/cowboy/grunt/blob/master/docs/getting_started.md), which is a complete guide to configuring grunt for your project. In addition, check out the [example gruntfiles](/cowboy/grunt/blob/master/docs/example_gruntfiles.md) which highlight a number of fairly common configurations.
f8d2662 @cowboy Updating readme to make it a little more awesome.
authored
8
9 ## Built-in tasks
10 As of now, grunt has the following predefined tasks that you can use in your project:
11
12 * [concat](/cowboy/grunt/blob/master/docs/task_concat.md) - Concatenate files.
13 * [init](/cowboy/grunt/blob/master/docs/task_init.md) - Generate project scaffolding from a predefined template.
14 * [lint](/cowboy/grunt/blob/master/docs/task_lint.md) - Validate files with [JSHint][jshint].
15 * [min](/cowboy/grunt/blob/master/docs/task_min.md) - Minify files with [UglifyJS][uglify].
16 * [qunit](/cowboy/grunt/blob/master/docs/task_qunit.md) - Run [QUnit][qunit] unit tests in a headless [PhantomJS][phantom] instance.
17 * [server](/cowboy/grunt/blob/master/docs/task_server.md) - Start a static web server.
9db1347 @cowboy More minor readme updates.
authored
18 * test - Run unit tests with [nodeunit][nodeunit].
19 * watch - Run predefined tasks whenever watched files change.
f8d2662 @cowboy Updating readme to make it a little more awesome.
authored
20
59f8578 @cowboy Updating some docs to make them more awesome.
authored
21 _(More documentation forthcoming)_
22
f8d2662 @cowboy Updating readme to make it a little more awesome.
authored
23 ## Custom tasks
2b199e7 @cowboy More minor readme tweaks.
authored
24 In addition to the built-in tasks, you can create your own tasks. Don't like a built-in task's default behavior? Override it. Check out the [grunt API documentation](/cowboy/grunt/blob/master/docs/api.md) and the [built-in tasks source](/cowboy/grunt/blob/master/tasks) for everything you need to know about creating custom tasks.
ab62e0f @cowboy Documenting some stuff. I have lots more to write.
authored
25
b65217e @cowboy Updating readme.
authored
26 ## Documentation
2b199e7 @cowboy More minor readme tweaks.
authored
27 Take a look at the [documentation table of contents][docs] for all the things.
ce76143 @cowboy Updated readme to mention that it's in beta and that feedback and sug…
authored
28
469bda8 @cowboy Updating Readme. Lots more to write, but it's a start.
authored
29 ## Why does grunt exist?
30 Doing all this stuff manually is a total pain, and building all this stuff into a gigantic Makefile / Jakefile / Cakefile / Rakefile / ?akefile that's maintained across all my projects was also becoming a total pain. Since I always found myself performing the same tasks over and over again, for every project, it made sense to build a task-based build tool.
31
32 Being primarily a JavaScript developer, I decided to use [Node.js][node] and [npm][npm] because the dependencies I most care about ([JSHint][jshint] and [UglifyJS][uglify]) were already npm modules. That being said, while Node.js was designed to support highly-concurrent asynchronous-IO-driven web servers, it was clearly NOT designed to make command-line build tools. But none of that matters, because grunt works. Just install it and see.
b996cd3 @cowboy Added cloning / install instructions to readme. For the few, brave gu…
authored
33
469bda8 @cowboy Updating Readme. Lots more to write, but it's a start.
authored
34 ## Installing grunt
ce76143 @cowboy Updated readme to mention that it's in beta and that feedback and sug…
authored
35
59f8578 @cowboy Updating some docs to make them more awesome.
authored
36 Grunt is available as an [npm][npm] module. If you install grunt globally via `npm install -g grunt`, it will be available for use in all of your projects. Once grunt has been installed, you can type `grunt --help` at the command line for more information. And if you want to see grunt "grunt" itself, cd into grunt's directory and type `grunt`
af4afd2 @cowboy Readme, docs and description "tagline" tweaks.
authored
37
59f8578 @cowboy Updating some docs to make them more awesome.
authored
38 _Note: in Windows, you may need to run grunt as `grunt.cmd`. See the [FAQ](/cowboy/grunt/blob/master/docs/faq.md) for more Windows-specific information._
ab62e0f @cowboy Documenting some stuff. I have lots more to write.
authored
39
59f8578 @cowboy Updating some docs to make them more awesome.
authored
40 For projects already using grunt, you're done. Otherwise, if you're adding grunt to an existing project or starting from scratch, check out the [getting started guide](/cowboy/grunt/blob/master/docs/getting_started.md), which is a complete guide to configuring grunt for your project.
dc8db78 @jzaefferer Documentation for init task
jzaefferer authored
41
5aad12e @cowboy MIT license is fine. GPL license is redundant.
authored
42 ## Release History
ab93458 @cowboy Removed handlebars, strip_banner tweaks.
authored
43 _(Until v1.0.0, this will only be updated when major or breaking changes are made)_
51a4be7 @cowboy I guess I'll release it on npm now.
authored
44
4204e95 @cowboy Updating readme slightly for v0.3.3.
authored
45 * 2012/03/26 - v0.3.3 - Added a "gruntfile" init template. Create a basic gruntfile in seconds with `grunt init:gruntfile`. A few other minor fixes.
1b90c4c @cowboy Bumping version to v0.3.2 and publishing.
authored
46 * 2012/03/25 - v0.3.2 - Init tasks can now specify a file matching wildcard for the initial "files exist" warning. The jQuery init template now has jQuery 1.7.2. Fixed a bug in the `task.expand*` methods.
7ddc08c @cowboy Bumping version to v0.3.1 and publishing.
authored
47 * 2012/03/25 - v0.3.1 - Added a few methods. Substantially reworked the init task and templates.
373f71e @cowboy Bumping version to v0.3.0 and publishing.
authored
48 * 2012/03/23 - v0.3.0 - Too many changes to list. But in brief: completely reorganized the API, removed all globals, added docs and examples for nearly everything, built a preliminary plugin system (that still needs to be tested). PLEASE RTFM OK? THX U.
bdc9798 @cowboy Updating readme with version changes.
authored
49 * 2012/02/03 - v0.2.14 - Added a server task (which starts a static webserver for your tasks). The qunit task now uses PhantomJS instead of Zombie.js (4768 of 4971 jQuery unit test pass, neat), and supports both file wildcards as well as http:// or https:// urls. (static webserver, anyone?). Grunt should no longer "hang" when done.
c33969c @cowboy Bumping version to v0.2.5, publishing to npm.
authored
50 * 2012/01/29 - v0.2.5 - Added a "qunit" task as well as an init "jquery" template (as of now, there are also "node" and "commonjs" init templates).
8438292 @cowboy Minor readme tweak.
authored
51 * 2012/01/22 - v0.2.1 - Removed handlebars, templates are universally handled by underscore now. Changed init task template tags from <% %> to {% %}. Banners beginning with /*! will no longer be stripped.
52 * 2012/01/22 - v0.2.0 - Added "init" task with a sample template, reworked a lot of code. Hopefully it's backwards-compatible.
53 * 2012/01/11 - v0.1.0 - Initial release.
5aad12e @cowboy MIT license is fine. GPL license is redundant.
authored
54
55 ## License
56 Copyright (c) 2012 "Cowboy" Ben Alman
57 Licensed under the MIT license.
58 <http://benalman.com/about/license/>
af4afd2 @cowboy Readme, docs and description "tagline" tweaks.
authored
59
60
9db1347 @cowboy More minor readme updates.
authored
61 [docs]: /cowboy/grunt/blob/master/docs/toc.md
62 [docs-init]: /cowboy/grunt/blob/master/docs/task_init.md
63 [issues]: /cowboy/grunt/issues
af4afd2 @cowboy Readme, docs and description "tagline" tweaks.
authored
64
65 [node]: http://nodejs.org/
66 [npm]: http://npmjs.org/
67 [jshint]: http://www.jshint.com/
68 [uglify]: https://github.com/mishoo/UglifyJS/
69 [nodeunit]: https://github.com/caolan/nodeunit
70 [qunit]: http://docs.jquery.com/QUnit
71 [phantom]: http://www.phantomjs.org/
Something went wrong with that request. Please try again.