Rethinking Automation: NPM to rule them all

Some things in the JavaScript world may require a considerable number of tasks: managing assets, styles compilation and minification, JavaScript files concatenation, minification, and compression, etc. We have many amazing tools to help us in these processes: Grunt and Gulp are the most popular these days - but are they really necessary?