What do Yeoman Generators “really” add to Ionic Projects?

In this StackOverflow question I answered what do actually Yeoman Generators add to the Ionic projects.

profile for Nikola at Stack Overflow, Q&A for professional and enthusiast programmers
I’m a big fan of Stack Overflow and I tend to contribute regularly (am currently in the top 0.X%). In this category (stackoverflow) of posts, I will be posting my top rated questions and answers. This, btw, is allowed as explained in the meta thread here.

As you may know, I’m really into Ionic framework lately and am helping out on StackOverflow with the knowledge I gained so far with the framework. I’m currently #3 in the top All time answerers list.

I answered this question by user qizzacious:

I don’t understand why the generator-ionic (along with other ionic + Yeoman project)s are so popular.

I don’t see what the advantages are in using a yeomen generator in this case, this is.

I understand why the Ionic framework is useful in a Cordova project (as we all know, the UI, ngCordova plugins, it uses AngularJS, ect) but what specifically does the Yeoman component add that a basic Ionic project doesn’t already have or that cannot be easily added with a bower install.

It seems to me that the Yeoman ionic projects just seem to be unnecessary bloat and can lead to more errors and library issues. I just do not see how components like karma and grunt (as opposed to ionic using gulp) fit into help with development.

My answer was:

True, you can set all this up by yourself. However, imagine setting this up on each and every project that you start. Kind of cumbersome, don’t you think?

That’s why some people tend to create these generators – to save you (if you like) the time of having to scaffold your application every time from beginning. Usually they provide some features (about which you can read on the Github pages) or they may even enforce some kind of project directory layout (which may help with big projects).

All in all, you don’t have to use them, or stress about them. For instance, I personally don’t use them on every project, but I appreciate the community effort and when I want to try something quick I tend to test them from time to time to see how they’ve evolved.

Don’t hate, donate 😉 (Sure sure, I know you’re not hating, the statement just seemed appropriate).

Written by Nikola Brežnjak