If you devoted some time to develop the app from the previous Homework section, you have probably found out that it is kinda annoying having to run
npm run build every time you make a change in your code.
Why use a task runner?
In one word: automation. The less work you have to do when performing repetitive tasks like minification, compilation, unit testing, linting, and so on, the easier your job becomes.
Gulp vs Grunt
Grunt, like Gulp, ...