GruntThe JavaScript Task Runner

여기는 Grunt 공식 사이트를 번역한 비공식 사이트입니다. 이상한 부분은 이리로 올려주세요. - @zziuni

Task Runner가 필요한 이유

자동화를 위해서다. 여러분이 해야 할 반복 작업을 줄여준다. minification, compilation, unit testing, linting 등의 작업이 여기에 속한다. 일단 설정을 하고 나면, Task Runner가 여러분의 작업을 대신한다.

Grunt를 써야 하는 이유

Grunt 생태계는 지금도 크지만 계속 성장 중이다. Grunt와 함께 쓸 수 있는 수백 개의 플러그인으로 원하는 일을 자동화해서 작업 효율을 높일 수 있다. 원하는 Grunt plugin이 없다면, npm으로 직접 제작 및 배포도 손쉽게 할 수 있다.

Available Grunt plugins

사람들이 필요로 하는 대부분의 플러그인이 이미 준비되어있을 뿐만 아니라 매일 새로운 plugin이 올라오고 있다. 전체 plugin 목록은 계속 채워지도록 두고, 잘 알려진 것들만 먼저 보자.

Here's a preview!

grunt 설치가 간단하긴 하지만, 프로젝트에서 동작하는 방식을 이해할 필요가 있다. 이를 위해 sample project에서 Grunt를 실행한 결과 예제를 살펴보자.

grunt|
Running "jshint:gruntfile" (jshint) task
>> 1 file lint free.
|
Running "jshint:src" (jshint) task
>> 1 file lint free.
|
Running "jshint:test" (jshint) task
>> 1 file lint free.
|
Running "qunit:files" (qunit) task
Testing test/tiny-pubsub.html....OK
>> 4 assertions passed (23ms)
|
Running "clean:files" (clean) task
Cleaning "dist"...OK
|
Running "concat:dist" (concat) task
File "dist/ba-tiny-pubsub.js" created.
|
Running "uglify:dist" (uglify) task
File "dist/ba-tiny-pubsub.min.js" created.
Uncompressed size: 389 bytes.
Compressed size: 119 bytes gzipped (185 bytes minified).
|
Done, without errors.
|

Who uses Grunt?

Grunt를 사용하는 회사와 프로젝트들이다. 전체 목록 여기.

How do I get started?

Getting Started를 먼저 읽자. 프로젝트에서 Grunt를 사용하는 방법을 소개하는 문서다. 그러고 나서 Sample Gruntfile를 체크아웃하고, Configuring Tasks문서로 Task 환경설정을 공부하자.