There has been some decent research by Raible Designs on this topic: http://raibledesigns.com/rd/entry/grails_angular_vs_jhipster or http://www.slideshare.net/mraible/comparing-jvm-web-framewor...
I don't know the author but those articles have led me towards looking into JHipster. Grails didn't sit well with me since I have done Ruby/Rails prior to that and some things just appeared backwards with Grails.
My personal results recently were that JHipster was a bit cumbersome to get going since there are so many dependencies to install. Some of which I could not get to compile/setup with Node.js. Since my target app is an enterprise corporate environment, that is a non-starter. I'm leaning towards Ruby/Rails but with JRuby and the warbler gem to basically WAR up the Rails app so I can deploy to something simple like Tomcat.
I tried asking exclusively about the future of Grails a few days ago but it didn't work out: https://news.ycombinator.com/item?id=9986602. This time I thought I'd cast a broader net; the questions I'm asking are not exactly unrelated anyway.
There are some answers on SO, but they're usually closed down as it's not the appropriate forum for this kind of debate. Nevertheless, it's worth searching for a few of the more recent ones and seeing what people say.
Personally, I chose to use Grails fairly recently, but it was a tough decision. I started with the requirement that it needed to run on the JVM as a webapp.
So, I tried using clojure and it's ecosystem for building a webapp, but it's quite new. There were few libararies and plugins and SO answers to help me. While I think that the whole React/Clojurescript/Clojure approach to building webapps is good, I just didn't want to participate in the bleeding edge / reinventing the wheel thing.
Grails by comparison had a much more mature ecosystem, and although it's not without its faults, it's much easier to get started in coming from a Java background. I still don't feel like I know groovy, but I was still productive and got everything I wanted done.
So a few further points that I can't really answer to:
- I felt it could still be better. I've not really used Django or Rails much, but it would be nice to know how they compare.
- I built a very old-style app, in that there was a CRUD model, and pages for entities. It would have been nice to build a single-page webapp with lots of AJAX. There are lots of frameworks out there for this, but I am not aware of anything really established in Java.
- I still don't really understand what the deal is with Groovy, or really why they needed to have this in there.
It might not survive even inside of Gradle. As Gradle becomes more popular, I can't imagine Groovy remaining the only scripting language available for Gradle build scripts. Virtually all serious software offers a choice of scripting languages for configuration, e.g. Maven which can be configured not only with Groovy but also Clojure, Scala, and Ruby, see https://github.com/takari/polyglot-maven . Gradle 2.0 has virtually no Groovy code in its codebase, only what was essential for hosting Groovy for build scripts, so that might give a clue about their future intentions. One snag may be the retrenched Groovy programmer employed by Gradleware after VMware/Pivotal abandoned Groovy: he might sabotage any effort by Gradleware to diversify from Groovy as a scripting language for Gradle builds.