Rapid Application Development with
JUG Mainz, Sep. 9th 2020
About Me
Frederik Hahne
@atomfrede
atomfrede.gitlab.io
About Me
- JHipster Core Team Member since 2015
- Gradle Stream Lead
- Recently working on vue, micronaut and heroku
- JUG Paderborn Organizer
- Software Developer at wescale in Paderborn
Intro
Overview
Demo
How long does it take to setup a modern web application?
How long does it take to go into production?
What is JHipster?
+
=
-
What is JHipster?
+
=
-
What is JHipster?
- Full Stack Application Development Platform
- 100% Open Source
- Best Practice & High Quality Code
- Community & Knowledge
Community
https://github.com/jhipster/prettier-java
Blueprints & Modules
Modules
- Access to JHipster configuration
- Act as new sub-generator
- Add new functions
Blueprints
- Overwrite parts of the main generator
- Bring own templates, files etc
- Add or replace parts of the main generator
Neo4J
- We didn't do it
- New Spring Module in the making
- Chat and plan during JFN19
- Neo4j migrations
- First class SDN/RX support in JHipster
Bug Bounties
- Contribute for fun and profit
https://hipster-labs.github.io/github-dashboard/
Let's get started
// Installed node, java and git (optional)
npm install -g generator-jhipster
npm install -g generator-jhipster-micronaut
mhipster
JDL
application {
config {
baseName hike
applicationType monolith
authenticationType oauth2
packageName com.github.atomfrede.example.hike
prodDatabaseType postgresql
}
entities *
}
entity HikingLocation {
name String required
description String required
}
entity Hike {
name String required
date LocalDate required
description TextBlob required
photo ImageBlob required
type Difficulty required
length Integer required
}
enum Difficulty {
EASY,
MEDIUM,
HARD,
ULTRA
}
relationship OneToOne {
Hike{startLocation(name)} to HikingLocation,
Hike{destination(name)} to HikingLocation
}
paginate Hike with pagination
paginate HikingLocation with pagination
mhipster import-jdl app.jdl
docker-compose -f src/main/docker/keycloak.yml up -d
./mvnw
./mvnw -P-webpack
npm start
Rapid Application Generation
Tooling?
Going to the cloud
mhipster heroku
JHipster 7
JHipster 7
- Finally Boot 2.3
- Administration App
- Internal Refactoring
- Better Blueprint Support
- Cypress & Vue in Core
- Replace Netflix Stack with Spring Cloud
- Reactive support for entity sub gen
- Side-by-Side support
- Microfrontends
https://www.jhipster.tech/jhipster-code/
More
- jhipster.tech
- github.com/jhipster
- twitter.com/jhipster
- jhipster-book.com
- packtpub.com/application-development/full-stack-development-jhipster
Questions?
Rapid Application Development with JHipster
By atomfrede
Rapid Application Development with JHipster
Slides for talk at JUG Mainz on Sep. 9th 2020
- 1,155