Code Days 2020
Frederik Hahne
JHipster Core Team Member since 2015
Gradle Stream Lead, Vue Maintainer
JUG Paderborn Organizer
Software Developer at wescale in Paderborn
I am a Noob
Introduction
Overview
Demo
How long does it take to setup a modern web application?
How long does it take to configure databases, security, api?
How long does it take to go to production?
Full Stack Application Development Platform
100% Open Source
Best Practice & High Quality Code
Community & Knowledge
15k+ Stars
35 Core Team Member
536+ Contributors
2 Books
100000+ Installations
2 Conferences
A high-performance and robust Java stack on the server side with Spring Boot
A sleek, modern, mobile-first front-end with Angular, React and Bootstrap
A powerful workflow to build your application with Yeoman, Webpack and Maven/Gradle
technologies used by JHipster have their default configuration used as much as possible
only add options when there is sufficient added-value in the generated code
for the Java code, follow the default Intellij IDEA coding style*
use strict versions for third-party libraries
Let’s Code
//Install node, java and git (optional)
npm install -g generator-jhipster
npm install -g generator-jhipster-vuejs
jhipster --blueprints vuejs
Generate a basic library application
Short Walkthrough
Generate CRUD capabilities
Small changes to the code
Build with Gitlab CI, deploy to Heroku
@SuppressWarnings("unused")
@Repository
public interface BorrowRepository extends JpaRepository<Borrow, Long> {
}
@SuppressWarnings("unused")
@Repository
public interface BorrowRepositoryCustom extends BorrowRepository {
}
import BookCopyService from "@/entities/book-copy/book-copy.service";
export default class BookCopyServiceCustom extends BookCopyService {
}
Start with less
Don’t touch the generated code
Keep JDL up to date
Use same DB in Dev & Prod
Use DTO & Services
Most likely you will add custom web api
start.jhipster.tech
Polyglot
Kotlin
Node.js, .net
Micronaut, Quarkus
Spring Boot 2.2.x
Neo4j Support
Modulith, Microfrontends, Fully Reactive