JHipster
Create a Spring Boot + AngularJS project in no time.
Dmytro Panin
▪ Senior Java Developer
▪ Java Architect
https://www.linkedin.com/in/DmytroPanin
dmytro.panin@gmail.com https://github.com/dr-mod/jhipster-books/
About me
http://www.slideshare.net/DmytroPanin/get-along-with-
jhipster
Agenda
▪ Scaffolding
▪ Yeoman
▪ What is JHipster?
▪ Demo
▪ More about JHipster
▪ Q&A session
▪ Saves time
▪ Includes accepted practices
Scaffolding
▪ Design time and Runtime scaffolding
Scaffolding workflow
npm install -g yo
A yeoman was a member of an English social class, generally
a freeman who owned his own farm. (Wikipedia)
Yeoman – the web’s scaffolding tool for modern
webapps
http://yeoman.io/generators/
Generators
JHipster is a Yeoman generator, used
to create a Spring Boot + AngularJS
project
Project status
https://www.openhub.net/p/generator-jhipster
▪ 150 developers contributed
▪ fifth most stared yeoman
generator
▪ up to 15.500 downloads in
last 30 days
yo grunt
gulp
bower
npm
(not supported in JHipster 3.0)
http://jhipster.github.io/
Server side technologies
▪ Spring Boot
▪ Spring Security
▪ Gradle or Maven
▪ Hibernate
▪ ElasticSearch
▪ Thymeleaf
▪ Gatling
▪ Cucumber
Client side technologies
▪ AngularJS
▪ HTML5 + CSS3
▪ Bootstrap
▪ jQuery
▪ Websockets
▪ Sass
▪ Browsersync
▪ Karma
▪ Protractor
JHipster databases
Database versioning
SQL
Liquibase Mongeez CQL
JHipster hibernate 2nd level cache
Let’s build an app
Creating an entity
yo jhipster:entity entityName
▪ Yoman sub-generator
▪ JDL
▪ JHipster-UML
yo jhipster:import-jdl fileName.jh
http://jhipster.github.io/jdl-studio/https://github.com/dr-mod/jhipster-books/blob/master/entities.jh
http://jhipster.github.io/modules/marketplace/#/details/generator-jhipster-bootswatch
npm install -g generator-jhipster-bootswatch
yo jhipster-bootswatch
Modules
▪ Elasticsearch Reindexer
▪ Basic Auth
▪ Bootstrap Material
Design
▪ Bootswatch
▪ Leaflet
▪ Google Maps
▪ Google Analytics
etc..
http://jhipster.github.io/modules/marketplace/ https://github.com/jhipster/generator-jhipster-module
Sub-generators
▪ entity
▪ import-jdl
▪ service
▪ languages
▪ server
▪ client
▪ heroku
▪ aws
▪ cloudfoundry
yo jhipster:sub-generator-name
npmnode_modulesgenerator-jhipstergenerators
Testing
▪ UI - Karma
▪ AngularJS integration - Protractor
▪ Performance - Gatling
gulp protractor
gulp test
mvnw gatling:execute
Run in Docker
mvnw package -Pprod docker:build
gradlew bootRepackage -Pprod buildDocker
docker-compose -f src/main/docker/app.yml
Links to check:
▪ http://yeoman.io/
▪ http://yeoman.io/generators/
▪ http://jhipster.github.io/
▪ https://www.openhub.net/p/generator-jhipster
▪ https://github.com/dr-mod/jhipster-books
Questions

Get along with JHipster