Upgrade to Pro — share decks privately, control downloads, hide ads and more …

JHipster conference- Keynote

JHipster conference- Keynote

Slides from my Keynote along with Julien Dubois for JHipsterConf, June 2018


Deepu K Sasidharan

June 21, 2018


  1. https://jhipster.tech #jhipsterconf @java_hipster Greetings

  2. https://jhipster.tech #jhipsterconf @java_hipster Who are we? Julien Dubois JHipster creator

    & lead developer Chief Innovation Officer at Ippon Technology @juliendubois
  3. https://jhipster.tech #jhipsterconf @java_hipster Deepu K Sasidharan JHipster co-lead developer Senior

    product developer at XebiaLabs @deepu105 Who are we?
  4. https://jhipster.tech #jhipsterconf @java_hipster Twitter • Follow @jhipsterconf for up-to-date news

    of the conference • If you want to share anything or send feedback, use the #jhipsterconf hashtag
  5. https://jhipster.tech #jhipsterconf @java_hipster Thank you to our sponsors

  6. https://jhipster.tech #jhipsterconf @java_hipster LinkedIn Learning • All conference attendees will

    receive a 3-month free pass to LinkedIn Learning https://www.linkedin.com/premium/plan/learning • This includes their new course “JHipster: Build and Deploy Spring Boot Microservices” https://www.linkedin.com/learning/jhipster-build-and-depl oy-spring-boot-microservices
  7. https://jhipster.tech #jhipsterconf @java_hipster Agenda • 09:30 Keynote • 10:40 Why

    Heroku loves JHipster • 11:20 Add SSO to your JHipster apps with OIDC • 12:00 Lunch • 14:00 Monitoring JHipster applications with the JHipster Console • 14:30 Custom and generated code side by side • 15:00 Improving JHipster + Angular with lazy loading and Webpack • 15:30 Creating and managing your application with the JDL • 16:00 Break • 16:30 Connect your JHipster apps to the world of APIs with Swagger and gRPC • 17:00 DevOps with JHipster: Continuous Integration and Delivery • 17:30 JHipster on Kubernetes / JHipster on Google App Engine • 18:00 Reactive Spring • 19:00 Party at the Ippon headquarters
  8. https://jhipster.tech #jhipsterconf @java_hipster Achievements unlocked this year • 10,000+ stars

    on GitHub • 1,000,000+ installations • 13,000+ registered users on JHipster Online • 2 books • 4 online courses on major MOOCs • All trends show constant progression over the last 4 years ◦ (Google Trends, Stackoverflow tags, job posts…)
  9. https://jhipster.tech #jhipsterconf @java_hipster Thanks to the team • All this

    wouldn’t be possible without an awesome team! ◦ 17 core team members ◦ 400+ contributors ◦ Hundreds of users filling bugs and following the project guidelines!
  10. https://jhipster.tech #jhipsterconf @java_hipster Open Collective was started in December, 2017

    • https://opencollective.com/generator-jhipster ◦ 10 companies and 32 people have sponsored the project ◦ We currently have about $5,000 on our account • What are we doing with the money? ◦ All transactions are public ◦ Technical costs for the project ◦ Food/transportation/hotel for team meetings ◦ At some point, we will propose bug bounties
  11. https://jhipster.tech #jhipsterconf @java_hipster What’s new? JHipster 5 and beyond!

  12. https://jhipster.tech #jhipsterconf @java_hipster JHipster 5 • Angular & React ◦

    Latest versions, optimized & faster build with Webpack 4 • Spring Boot 2 • Prettier • Jest • JDL 2 • AWS • GCP & Istio • OAuth2 • Memcached
  13. https://jhipster.tech #jhipsterconf @java_hipster JHipster Online • Launched last summer at

    https://start.jhipster.tech/ ◦ Thanks to Google for the sponsorship! • Huge success ◦ 13,000 registered users • Open Source project at https://github.com/jhipster/jhipster-online • New features coming! ◦ GitLab support ◦ Easy to host in your own company
  14. https://jhipster.tech #jhipsterconf @java_hipster JHipster Online • Statistics endpoint will replace

    the current Yeoman Insight • Better for end-users ◦ Access to their own statistics ◦ Notifications based on generated projects ◦ Ability to send crash reports ◦ GDPR-compliant • Better for the project ◦ More detailed statistics so we know where to focus • Better for research ◦ Detailed knowledge on technologies used across 10,000s of projects ◦ Ever wondered exact numbers and trends of Angular vs React? Is MongoDB widely used? Is Gradle growing compared to Maven?
  15. https://jhipster.tech #jhipsterconf @java_hipster Sample report from JHipster Online

  16. https://jhipster.tech #jhipsterconf @java_hipster React

  17. https://jhipster.tech #jhipsterconf @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 • Migration is complete and code is out of Beta • Our React support has the same feature scope as the Angular support
  18. https://jhipster.tech #jhipsterconf @java_hipster React tech stack • Written in Typescript

    (Similar to Angular) • Redux + react-redux + Axios + Promise middleware + redux-thunk for state management • React router v4 • Bootstrap 4 + Reactstrap • Sass • Custom i18n support (react-jhipster)
  19. https://jhipster.tech #jhipsterconf @java_hipster React tooling • Tslint + tslint-eslint +

    tslint-react • Jest + Enzyme for unit tests • Protractor + Mocha + Chai for e2e tests • Webpack setup very similar to our Angular setup • Prettier
  20. https://jhipster.tech #jhipsterconf @java_hipster React JHipster library • Official library from

    the JHipster team for React ◦ i18n ◦ Pagination ◦ Formatters ◦ Local Storage ◦ Utils • https://github.com/jhipster/react-jhipster
  21. https://jhipster.tech #jhipsterconf @java_hipster React roadmap • Lazy loading PR in

    progress (https://github.com/jhipster/generator-jhipster/pull/7541) • TS Types and code quality improvements • Date pickers and other utilities • Coverage and e2e improvements
  22. https://jhipster.tech #jhipsterconf @java_hipster Blueprints

  23. https://jhipster.tech #jhipsterconf @java_hipster JHipster Blueprints • Blueprints enables developers to

    customize parts of the generator with plugins ◦ Customize only what is required ◦ Work around Yeoman limitations • 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 • Only available for application, entity, spring-service, spring-controller and import-jdl generators
  24. https://jhipster.tech #jhipsterconf @java_hipster JHipster Blueprints vs JHipster Modules • Only

    for specific generators that create client/server side files • Suitable to replace or enhance client/server side templates • Reuse most of generator stages from JHipster • Add new functionality like a new cloud deployment option • Suitable to provide features not supported by JHipster • Only public API of JHipster can be used VS
  25. https://jhipster.tech #jhipsterconf @java_hipster JHipster Kotlin Blueprint • Official Blueprint from

    JHipster ◦ https://github.com/jhipster/jhipster-kotlin • Lead by core team member Sendil Kumar N • Migration work in progress • Replaces most of the server side java code with Kotlin • Follows a hybrid approach with Java and Kotlin
  26. https://jhipster.tech #jhipsterconf @java_hipster Blueprint Demo

  27. https://jhipster.tech #jhipsterconf @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
  28. https://jhipster.tech #jhipsterconf @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