Slide 1

Slide 1 text

https://jhipster.tech @java_hipster JHipster What’s new in our Spring/Summer 2018 collection? Julien Dubois & Deepu K Sasidharan

Slide 2

Slide 2 text

https://jhipster.tech @java_hipster Julien Dubois ● JHipster creator & lead developer ● Chief Innovation Officer at Ippon Technologies ● @juliendubois

Slide 3

Slide 3 text

https://jhipster.tech @java_hipster Deepu K Sasidharan ● JHipster Co-lead ● Javascript Evangelist ● Senior product developer ● Robotics & Astronomy enthusiast ● @deepu105 ● deepu.js.org

Slide 4

Slide 4 text

https://jhipster.tech @java_hipster What is JHipster? ● Application generator that focuses on developer productivity ○ Spring Boot + Angular/React playing well together ○ Development and production workflows ● Huge community ○ Lots of new features developed in parallel

Slide 5

Slide 5 text

https://jhipster.tech @java_hipster Spring Boot 2.0 ● Huge new release ○ New features ○ Updated libraries ● Migration is quite complex ○ New configuration & necessary code refactoring can take several days ● With JHipster 5, we migrate to Spring Boot 2 ○ JHipster 4 is the last release that supports Spring Boot 1.5

Slide 6

Slide 6 text

https://jhipster.tech @java_hipster Reactive support ● One of the big new features from Spring Boot 2 ○ Useful for specific use-cases ○ SQL databases are not supported yet ● Support is a work in progress ○ No commitment yet

Slide 7

Slide 7 text

https://jhipster.tech @java_hipster Improved Java build ● JDK 9 and JDK 10 support ● New Maven BOM ○ The “jhipster-dependencies” replaces the Spring Platform BOM which was deprecated by Pivotal ○ New “jhipster-framework” and “jhipster-parent” projects

Slide 8

Slide 8 text

https://jhipster.tech @java_hipster React support ● React support was one of the most requested feature ○ Initial concerns due to licence ○ Experimental support was added in JHipster 4 ● Our React support has the same scope as the Angular support ○ Written in Typescript (Similar to Angular) ○ Redux + react-redux + Axios + Promise middleware + redux-thunk ○ React router v4 ○ Bootstrap 4 + Reactstrap ○ Webpack setup close to our Angular setup

Slide 9

Slide 9 text

https://jhipster.tech @java_hipster Improved Angular support ● New layout for microservice entities ● No more modal windows when editing entities ● Lazy loading for admin modules ● Better date handling with MomentJS ● AngularJS support has been removed

Slide 10

Slide 10 text

https://jhipster.tech @java_hipster Webpack 4 ● Migration to webpack 4 for Angular and React ○ Improved build speeds ○ Reduction in bundle size ○ Simplified configuration ● Migration to ts-loader ○ Speed improvements, especially in development ● Better caching with cache-loader

Slide 11

Slide 11 text

https://jhipster.tech @java_hipster Prettier support ● https://prettier.io/ is an opinionated code formatter ○ Works with TypeScript, CSS & Sass ○ Must be consistent with the lint configuration ○ Runs by default with JHipster 5 ○ Supports pre-commit hooks with Husky ● In the future ○ Support the Prettier Java plugin as soon as it is stable ■ https://github.com/thorbenvh8/prettier-java

Slide 12

Slide 12 text

https://jhipster.tech @java_hipster JDL v2 with application generation ● Application generation via JDL ○ Microservices with their entities can be grouped ○ Reusable application configurations ● WIP: Migration to http://sap.github.io/chevrotain from PegJS

Slide 13

Slide 13 text

https://jhipster.tech @java_hipster AWS deployment ● All the JHipster 4 deployment options still work ○ And they are still awesome! ● Only AWS gets a much-needed upgrade ○ “jhipster aws” deploys to AWS Beanstalk ■ For simple projects ■ Most issues for JHipster 4 are fixed, but still a bit buggy ○ “jhipster aws-containers” deploys to AWS Fargate ■ For complex projects ■ Uses Amazon Elastic Container Service ■ Deploys on multiple AZ ■ Must be fine-tuned for complex microservices architectures

Slide 14

Slide 14 text

https://jhipster.tech @java_hipster JHipster blueprints ● Blueprints enable users to customize parts of the generator with plugins ○ Customize what is required ● Enables to plug in your own client side templates or server side templates ○ JHipster Kotlin blueprint is an example ○ Possibility to add client side framework like VueJS by community

Slide 15

Slide 15 text

https://jhipster.tech @java_hipster Demo

Slide 16

Slide 16 text

https://jhipster.tech @java_hipster What’s missing? ● Vue.js ● Serverless

Slide 17

Slide 17 text

https://jhipster.tech @java_hipster Future roadmap ● Improvements on https://start.jhipster.tech ○ Open Source license (Apache 2) ○ Available as a Docker image ○ More options: automatic cloud deployment ● Improved OpenID Connect / OAuth2 support ○ Common code for Keycloak, Okta, JHipster UAA, Google

Slide 18

Slide 18 text

https://jhipster.tech @java_hipster More information on JHipster Main website https://jhipster.tech GitHub https://github.com/jhipster/generator-jhipster Twitter https://twitter.com/java_hipster Stack Overflow https://stackoverflow.com/questions/tagged/jhipster?sort=newest

Slide 19

Slide 19 text

https://jhipster.tech @java_hipster Full Stack Development with JHipster ● Amazon: https://goo.gl/k1NBAv ● Packt: https://goo.gl/XvQLeN ○ Discount code: JHIPSTER50 for ebooks ○ Discount code: JHIPSTER15 for print books

Slide 20

Slide 20 text

https://jhipster.tech @java_hipster Don’t miss JHipster Conf! 1 full day of JHipster All the news about JHipster 5, by its core commiters 100% in English Book your seat now at https://jhipster-conf.github.io/