Explore a high-level overview of JHipster, including how to use JHipster, what it produces, and how it helps you.
- [Narrator] We briefly touched on JHipster in Chapter One. Let's get more into it. JHipster is a yeoman generator that allows you to develop and deploy a Spring Boot and Angular web application. JHipster also allows you to build web applications with a microservice back-end. Let's take a look at the JHipster Tech Stack.
On the back end, we have Java Eight and Spring Boot and we have a responsive mobile-first front end with Angular and Twitter bootstrap. The NSA is implemented using the Netflix OSS stack and Docker, and our build workflow uses Yeoman, webpack, and Gradle. OK, so what are the benefits of using JHipster to bootstrap an application? Well, JHipster helps you kickstart a complete working application.
Everything just works, out of the box. We have webpack playing nice with Gradle, we have our docker config running smoothly, we have a complete working application ready to build out, and we have many best practices already baked in. So, is JHipster code production ready? Yes, it definitely is.
An application built with JHipster has all the optimizations that you would expect in a production-ready app. Let's go over some of those optimizations. We're going to have specific Spring profiles for each development environment, we're going to implement Gzipping and HTTP caching headers. We're also going to implement TypeScript and CSS optimization and minification using webpack.
Our deployment options include a self-executable Spring Boot JAR or a standard WAR file. And, we're going to have built-in monitoring, logging, and admin consoles. Also, we're going to hae a lot more. We'll go over that later in this chapter. So, how do I use JHipster? Well, you could use JHipster as an example or template on how to implement various things in your own application.
Or you could take the generated JHipster app as a solid foundation to directly build upon. JHipster is also a whole ecosystem. There are many sub-generators that allow you to build out entities, services, or even to Dockerize your application. There is even a whole market of submodules that let you use React instead of Angular, for instance.
JHipster is a very active, mature project. It has over 8100 stars on GitHub, it has over 11,000 commits, and over 360 contributors. Let's take a quick look at the main GitHub repository. We can see that it has a very open and permissive Apache 2.0 license.
At the time of this recording, we could see there have been 148 releases, and we could see that the last commit happened just an hour ago. JHipster is constantly being improved, and has a very active community around it. The creator and lead developer of JHipster is Julien Dubois. If you have any questions or if you'd like to get involved in the project, you can reach out to him.
He is very responsive on Twitter and GitHub.
- Installing Yarn, Yeoman, and JHipster
- Benefits of microservices
- Costs of using microservices
- JHipster microservice architecture
- Creating an API gateway
- Importing, reviewing, and running code
- How JHipster integrates with Docker
- Managing multiple microservices
- Deployment cloud solutions