Welcome to the Treehouse Community
Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.
Start your free trial

Ayoub Nejjari
10,877 PointsWhy Would I use webpack over other build tools, and task runners?
As an intermediate frontend developer and new to the overwhelming world of build tools, I am confused and don't know what tool to learn and use? NPM? Gulp? Bower?Webpack? Can you please tell me what tools should I know about and explain to me if there are differences between these technologies? Thanks
1 Answer

Luke Pettway
16,593 PointsWebpack is a bundling tool, not so much a task runner however it has a lot of extra tools that can be used with it to give it extended functionality and it can also do things such as code splitting. Grunt and Gulp are the two main competitors, with Gulp taking the lead, although NPM scripts are slowly being used more and more as a way to cut down on the amount of tools being used within a project.
I'd probably make it a point to learn more about each, and have a basic understanding of the differences between them. Depending on the project you are working on, and the team you are working with, you might use any of these tools. Currently I am working on a project that heavily uses both Browserify (a tool similar to webpack) and Gulp. I see Grunt getting used less and less, but that isn't to say it is obsolete, there are still plenty of developers who prefer it.
It would be a lie if I said I wasn't overwhelmed at times with the sheer number of tools, and technologies out there, but that is how this field is. The best thing you can do is learn about each tool, run through some examples to understand the differences, and know which tool to use and when.
Here are some excellent comparisons between these tools and give you a high level overview:
https://npmcompare.com/compare/browserify,grunt,gulp,webpack
https://medium.com/@preslavrachev/gulp-vs-grunt-why-one-why-the-other-f5d3b398edc4#.hp75xwp1m