Hi everyone,
Yes we have already discussed this in the past, and I have mixed feelings.
Indeed, Yeoman is too limited for our needs. Deepu knows it better than I do, and I'll just take one example as I'm currently working on JHipster Online: you can't script the Yeoman prompts. One of the original reasons I chose Yeoman was that it was a CLI tool, and my idea was to use it in scripts - and that fails as soon as you have prompts. That's the reason why JHipster Online only works with sub-generators that can work without asking any questions.... and that's really bad.
I also had very high hopes on having GUI tools on top of Yeoman. That was a very interesting part of the Yeoman documentation (you still have this:
http://yeoman.io/authoring/integrating-yeoman.html ), and the idea was that third-party tools would provide GUIs for free on top of JHipster. As we all know, none of those tools worked. There were also IDE integration with VS Code and Intellij IDEA, but they all fail because they don't understand correctly the way we use validators in the prompts - once again, we're going way farther than the Yeoman team created.
This is linked to the previous point, but we seriously lack to have a good "decision tree" that can be re-used. So we could use it on JHipster Online (I'm coding the generator rules there a second time and I always mistakes), and there is also the research team that wants to generate all possible combinations of JHipster, and they just can't do it.
Last but not least, both the Angular team and the React team chose competing solutions. That's not Yeoman's fault, and in fact I blame Angular to have a huge NIH syndrome. Instead of reinventing the wheel, they should have let people like us do CLIs, and spend more time doing a decent developer experience or coding lazy-loading and routing correctly (yes, that's a rant). I know less React but I have the same feeling.
Anyway, the 4 points above make me think about going away from Yeoman.
Then, we have a also a huge success thanks to Yeoman. It is very fast and the prompts work very well in all environments. Their team is very friendly. In terms of marketing, they have helped us a lot to get JHipster well-known.
We also have all the modules that rely on Yeoman - whatever breaking change we make, we will lose many integrations here, and that would be really bad. There are also many people doing modules and blueprints inside their companies, we can't let them down.
So that all makes me very reluctant to move away from Yeoman.
Deepu, and also Mathieu, you are our best experts on this field, so of course I'm trusting you on this. But couldn't we work more closely with the Yeoman team, and push the features we need into Yeoman itself? As you know, I've always tried to make people contribute and not compete - that's why we have so many options in JHipster. Couldn't we do the same on the core generator and Yeoman?
Cheers,
Julien