Skip to content

Releases: jhipster/generator-jhipster

v9.1.0

27 May 18:02

Choose a tag to compare

What's changed

🌟 Highlights

🍃 Spring Boot and security

  • Spring Boot 4.0.6 (#33553) - latest Spring Boot version for generated applications
  • Configuration sanitization for hardening (#32708) - tighter handling of generated configuration
  • JWT credentials fix (#33479) - fixes SecurityUtils.getCurrentUserJWT for JWT credentials

🅰️ Angular

  • OnPush change detection everywhere (#33218) - all generated components now use ChangeDetectionStrategy.OnPush
  • Rewritten service worker provider (#33329) - cleaner service worker setup in generated apps
  • SSR-safe html lang updates (#33330) - uses inject(DOCUMENT) for server-safe language updates

⚛️ React

  • Jest to Vitest migration (#33200) - generated React apps now use Vitest
  • react-top-loading-bar (#33039) - replaces react-redux-loading-bar
  • User management reducer fix (#33555) - fixes errorMessage handling

🟩 Vue

  • @module-federation/vite (#33283) - Vue microfrontends now use the Vite integration
  • rsbuild microfrontends by default (#33455) - rsbuild is now the default for generated Vue microfrontends
  • Gateway resources through module federation (#33485) - exposes and loads gateway resources through module federation
  • Stale auth token cleanup (#33503) - removes outdated authentication tokens from storage

🧩 Internal improvements

  • Improved TypeScript support (#33332, #33096) - each generator exports its own types, and new blueprints are generated in TypeScript
  • CI/CD generator split (#33398, #33388) - moves commands into ci-cd and ci-cd:common
  • Typed generator utilities (#33352, #33351, #33391) - more typed helpers and better writeFiles inference

🤖 AI and generator workflow

  • AGENTS.md and AI assistant disclosure policy (#33130) - documents expectations for AI-assisted contributions

📊 By the numbers

🔧 More changes

🔧 Core generator and templates

🖥️ Frontend

🧪 Testing and CI

🐾 JDL, internals, and blueprints

Read more

v9.0.0

11 Mar 04:40

Choose a tag to compare

We're pumped to announce the official release of JHipster 9.0.0! 🎉

Highlights

  • Spring Boot 4 support
  • React 19 with react-bootstrap (replacing reactstrap)
  • Angular 21 with zoneless by default, Vitest support, and signals migration
  • Vue with Bootstrap 5 (Bootstrap Vue Next)
  • GraalVM native image support
  • Java 21 minimum required (dropped Java 17)
  • Node 22 minimum required (dropped Node 20)
  • Complete TypeScript rewrite of the generator codebase

Thanks to our amazing community for all the feedback during the beta releases!

What's Changed

🍃 Spring Boot

  • spring-boot: re-add in-memory user credentials to application config (#32282) @mshima
  • spring-boot: fix sonar properties (#32253) @mshima
  • spring-boot: re-add application-tls to sonar ignored rule (#32235) @mshima
  • spring-boot: move oauth2 configuration to secret-samples (#32550) @mshima
  • spring-boot: move sensitive data to application-secret-samples.yml (#32218) @mshima
  • Add default user and admin credentials to application properties (#32389) @mshima
  • fix(kubernetes): generate Helm 3-only apply script and docs (#32494) @yuliuyi717-ux
  • kafka: don't start kafka in backend tests (#32388) @mshima
  • kafka: split kafka configuration (#32090) @mshima

🖥️ Frontend

🧪 Cypress

🐾 JDL/Internals/Blueprints

  • internal: enable ejs caching and adapt java and angular (#32521) @mshima
  • internal: drop BOOTSTRAP_APPLICATION priority (#32390) @mshima
  • internal: adjust loading/preparing priorities (#32307) @mshima
  • internal: update to yeoman-generator v8 (#32482) @mshima
  • graalvm: add spring-boot:graalvm generator and ignore UserManagement cypress test with graalvm enabled (#32567) @mshima
  • languages: improve mutations (#32310) @mshima
  • spring-cloud: move gatewayRoutes type to spring-cloud (#32313) @mshima
  • javascript-simple-application: make typescriptEslint the default (#32311) @mshima
  • Remove normalize-path dependency (#32474) @qmonmert
  • Simplify printJHipsterLogo to use a single console.log (#32269) @qmonmert

🔬 Code Quality

🪶 Maven

🐘 Gradle

🧪 Testing & CI

📦 Dependency updates

Ready to try it?

npm install -g generator-jhipster

Refer to the upgrade instructions for upgrading existing applications.

Contributors

Thank you to our contributors for this release!

v9.0.0-beta.3

05 Feb 04:48

Choose a tag to compare

The 9.0.0-beta.1 and 9.0.0-beta.2 releases exposed issues that made the jhipster CLI unusable. This beta release fixes those problems and includes related stability improvements.

🔧 Critical Fixes

  • Fixed chevrotain dependency - Resolves the Maximum call stack size exceeded error when parsing JDL files (#32130) @mshima
  • Fixed yeoman-test packaging - Resolves the Cannot find package 'yeoman-test' error when installed globally (#32122) @mshima

As always, this is a beta release, and we welcome community feedback to help us stabilize JHipster 9 for the final release.

What's Changed

🍃 Spring Boot

🖥️ Frontend

  • [React] Fix bump @module-federation/enhanced from 0.23.0 to 0.24.0 (#32197) @qmonmert

🐾 JDL/Internals/Blueprints

🔬 Code Quality

🧪 Testing & CI

📦 Dependency updates

  • Bump transitional dependencies (#32138) @github-actions[bot]

Want to try it out?

npm install -g generator-jhipster@9.0.0-beta.3

Contributors

Thank you to our contributors for this release:

v9.0.0-beta.2

30 Jan 02:55

Choose a tag to compare

⚠️ DEPRECATED

This release is broken. It causes Maximum call stack size exceeded errors when parsing JDL files due to a chevrotain-allstar bug.

Please wait for 9.0.0-beta.3.

See #32116 for details.


The 9.0.0-beta.1 release exposed an issue that made the generator unusable in certain scenarios. This beta release fixes that problem and includes the related stability improvements.

As always, this is a beta release, and we welcome community feedback to help us stabilize JHipster 9 for the final release.

What's Changed

🐾 JDL/Internals/Blueprints

🐘 Gradle

v9.0.0-beta.1

29 Jan 05:09

Choose a tag to compare

⚠️ DEPRECATED

This release is broken. The CLI fails with Cannot find package 'yeoman-test' when installed globally.

Please wait for 9.0.0-beta.2.

See #32114 for details.


What's Changed

This is the second beta release of JHipster v9! 🎉

🌟 Highlights

Spring Boot

  • Spring Boot 4 (#32035) - Major upgrade to Spring Boot 4.0.2
  • WebSocket Security (#31539) - Migrated to EnableWebSocketSecurity

Angular

  • Angular 21 (#31458) - Updated to Angular v21 and dropped Jest support (Vitest is now official)
  • Signals migration (#31727, #31718) - Converted more fields to signals
  • Standalone components (#31623, #31695) - Removed SharedModule/CommonModule in favor of standalone components

Internal Improvements

  • Dropped Java 17 support (#31903) - Java 21 is now the minimum required version
  • Dropped Node 20 support (#31845) - Node 22+ with native TypeScript support is now required
  • Node.js 24 (#31648) - Updated to Node.js 24.12.0
  • Gradle 9.3.0 (#31981) - Updated to latest Gradle

📊 By the Numbers

  • 1036 closed issues and pull requests since 9.0.0-beta.0
  • Major Spring Boot 4 migration across all database types
  • Significant Angular modernization with signals and standalone components

🔧 Key Technical Changes

Frontend

Angular:

  • Updated to Angular 21 with official Vitest support (#31458)
  • Dropped Jest support - Vitest is now the default testing framework
  • Converted isLoading/isSaving and more fields to signals (#31718, #31727)
  • Removed CommonModule and SharedModule in favor of standalone components (#31623, #31695)
  • Rewrote all interceptors with new functional syntax (#31704, #31706, #31717, #31734)
  • Added isolatedModules to tsconfig.json for better TypeScript compatibility (#31672)

Vue:

  • Added explicit Vitest imports (#32015)
  • Removed unused dependencies vue-tsc and vue-demi (#31764, #31761)
  • Various Sonar code quality improvements

All Frontends:

  • New client common generator shared across Angular, Vue, and React (#31649, #31650)
  • Added e2e tests for UserManagement (#31840)
  • Improved French translations (#32016, #32020)

Backend

Spring Boot 4 Migration:

  • Updated to Spring Boot 4.0.2 (#32035)
  • Migrated SQL databases to Spring Boot 4 (#31829)
  • Migrated Neo4j to Spring Boot 4 (#31852)
  • Migrated MongoDB to Spring Boot 4 (#31905)
  • Migrated Cassandra to Spring Boot 4 (#31853)
  • Migrated Elasticsearch to Spring Boot 4 (#31849)
  • Migrated Hazelcast to Spring Boot 4 (#31851)

Testing Improvements:

  • Switched test configurations to TestConfiguration (#31936)
  • Migrated testcontainers to DynamicPropertySource for SQL, MongoDB, Elasticsearch, Redis, Couchbase, and Kafka (#32013, #31988, #31917, #32078, #32055, #32082)

Other Backend Changes:

  • Migrated to EnableWebSocketSecurity (#31539)
  • Added JacksonHibernateConfiguration (#31817)
  • Additional field type mapping for Elasticsearch (#31593)
  • Fixed MariaDB container configuration path (#31639)

Build Tools:

  • Updated to Gradle 9.3.0 (#31981)
  • Updated to Maven 3.9.12 (#31720)
  • Now relies on Maven plugin versions from spring-boot-dependencies (#31568)

Generator Architecture (Internal)

Modularization:

  • Integrated spring-data generators into spring-boot (#32050)
  • Added spring-boot:liquibase generator and cleaned up GraalVM support (#32062)
  • Moved spring-cache into spring-boot generator (#31862)
  • Moved spring-cloud-stream into spring-cloud generator (#31774)
  • Moved feign-client to spring-cloud:feign-client (#31857)
  • Moved kubernetes-helm and kubernetes-knative into kubernetes generator (#31805)

Java:

  • Dropped Java 17 support - Java 21 is now required (#31903)
  • Updated jhipster-framework to 8.12.0 (#31913)
  • Added LIST to Java reserved keywords (#31828)

🧹 Cleanup & Modernization

  • Dropped Node.js 20 and 23 support - now requires Node 22+ with native TypeScript support (#31867)
  • Updated Node.js to 24.12.0 (#31648)
  • Fixed many Sonar code smells and recommendations
  • Improved code quality across frontend and backend

🔗 Migration Notes

This is a beta release - please test thoroughly before using in production.

Key breaking changes:

  • Java 21+ now required (dropped Java 17 support)
  • Node.js 22+ now required (dropped Node 20 support)
  • Spring Boot 4 - major upgrade with various API changes
  • Angular 21 - Jest support dropped, Vitest is now official

📝 Full Changelog

See the complete list of changes on GitHub:

🙏 Contributors

Thanks to all contributors:


Want to try it out?

npm install -g generator-jhipster@9.0.0-beta.1

Please report any issues you find on GitHub.

v9.0.0-beta.0

06 Dec 01:31

Choose a tag to compare

What’s Changed

This is the first beta release of JHipster v9! 🎉

🌟 Highlights

Angular

  • Zoneless by default (#31137) - Angular now runs without zone.js, improving performance and reducing bundle size
  • Vitest support (#31135) - Modern, fast testing alternative to Jest
  • esbuild by default (#30684) - Faster builds using Angular's new build system

Vue

  • Bootstrap 5 with bootstrap-vue-next (#29935) - Migrated from Bootstrap 4 to Bootstrap 5 using the new bootstrap-vue-next library

Spring Boot

  • Spring Boot 3.5.8 (#31461) - Latest Spring Boot version

Internal Improvements

  • Complete TypeScript redesign - The entire generator codebase has been rewritten in TypeScript with improved type safety
  • Modularization - Better separation of concerns with modular generator architecture
  • Node.js 24 (#31339) - Updated to Node.js 24.11.1
  • Java 25 support (#30936) - Added support for the latest Java version

📊 By the Numbers

  • 1091+ closed issues and pull requests since 8.11.0
  • Major architectural improvements for better maintainability
  • Significant code quality improvements with TypeScript migration

🔧 Key Technical Changes

Frontend

Angular:

  • Switched to zoneless architecture (#31137) - no zone.js
  • Added Vitest testing support (#31135)
  • Switched to esbuild build system by default (#30684)
  • Updated to Angular 20 (#29884)
  • Updated to TypeScript 5.9.3 (#31226)
  • Removed many deprecated APIs and improved code quality

Vue:

  • Migrated to bootstrap-vue-next for Bootstrap 5 compatibility (#29935)
  • Updated to Vue 3.5.19 (#30484)
  • Improved TypeScript types throughout

React:

  • Updated dependencies and improved TypeScript usage
  • Code quality improvements and dependency cleanup

All Frontends:

  • Added Cypress schematics for better E2E testing (#31281)
  • Improved URI encoding in service methods (#31474)
  • Better TypeScript strict mode compliance
  • ESLint and code quality improvements across the board

Backend

Spring Boot:

  • Updated to Spring Boot 3.5.8 (#31461)
  • Moved dependencies out of templates for better maintainability (#31584, #31592)
  • Removed Jackson LocalTime customizations (#31536)
  • Added ActiveProfiles annotation to Cucumber tests (#31541)
  • Updated JHipster Registry to v7.5.0 (#30934)

Database & Infrastructure:

  • Apache Kafka updated to 4.1.1 (#31561)
  • Cassandra updated to 5.0.5 (#31083)
  • MySQL connector updated to 9.5.0 (#31160)
  • Switched Consul image from Bitnami to Hashicorp (#30910)
  • Enhanced Elasticsearch string field mapping (#29312)

Build Tools:

  • Updated to Gradle 9.2.1 (#31401)
  • Updated to Maven 3.3.4 (#30864)
  • Migrated from Gradle Enterprise to Develocity (#29080)

Generator Architecture (Internal)

Major Refactoring:

  • Complete TypeScript redesign of the generator codebase
  • Enabled noImplicitAny across the entire codebase for better type safety (#30163)
  • Split generators into smaller, more modular pieces (#30346)
  • Added bootstrap generators for each technology stack
  • Improved generator composition and types

New Generator Structure:

  • java-simple-application and java-simple-application:bootstrap generators (#30629)
  • react:bootstrap, vue:bootstrap, and angular:bootstrap generators (#30532, #30524)
  • base-application:bootstrap and common:bootstrap generators (#30312)
  • Better separation between client and server concerns

Developer Experience:

  • Converted JavaScript files to TypeScript throughout
  • Improved JSDoc documentation
  • Better error messages and type checking
  • Removed deprecated APIs and cleaned up technical debt

🧹 Cleanup & Modernization

  • Dropped Node.js 18 and 21 support (now requires Node 20+)
  • Removed many deprecated features and APIs
  • Simplified code with modern JavaScript/TypeScript features
  • Fixed hundreds of code smells and Sonar issues
  • Improved test coverage and reliability

🔗 Migration Notes

This is a beta release - please test thoroughly before using in production. The TypeScript redesign and modularization represent significant internal changes, though most user-facing functionality remains similar.

Key breaking changes:

  • Node.js 20+ now required
  • Angular is zoneless by default (can be changed if needed)
  • Some generator APIs have changed for blueprint authors

📝 Full Changelog

See the complete list of changes on GitHub:

🙏 Contributors

Massive thanks to all contributors:

  • @mshima - Led the TypeScript redesign and modularization effort
  • @qmonmert - Code quality improvements and frontend updates
  • @jdubois - JHipster Registry updates
  • And many others who contributed bug reports and feedback!

Want to try it out?

npm install -g generator-jhipster@9.0.0-beta.0

Please report any issues you find on GitHub.

v8.11.0

07 May 02:19

Choose a tag to compare

What’s Changed

🖥️ Frontend

🐾 JDL/Internals/Blueprints

🐘 Gradle

📦 Dependency updates

v8.10.0

01 Apr 03:19

Choose a tag to compare

What’s Changed

🖥️ Frontend

🐾 JDL/Internals/Blueprints

  • internal: improve needles behavior with prettier. (#29077) @mshima
  • react: ignore unused import removal if the import is used in needles. (#29048) @mshima
  • internal: fix supporting needles apis (#28976) @mshima
  • internal: make normalizeLineEndings type more strict (#28979) @mshima
  • jdl: normalize windows path when looking for entities (#28765) @mshima
  • internal: always generate dtoClass to avoid parser error in rendered … (#28730) @mshima

🐘 Gradle

📦 Dependency updates

v8.9.0

08 Feb 18:39

Choose a tag to compare

What’s Changed

🖥️ Frontend

🐾 JDL/Internals/Blueprints

🪶 Maven

🐘 Gradle

📦 Dependency updates

v8.8.0

23 Dec 17:44

Choose a tag to compare

What’s Changed

🖥️ Frontend

🐾 JDL/Internals/Blueprints

🪶 Maven

🐘 Gradle

📦 Dependency updates

  • Bump transitional dependencies (#28261) @github-actions
  • update spring-boot-dependencies bom to v3.4.1 (#28249) @github-actions
  • Bump to Typescript 5.7.2 (#28213) @qmonmert
  • Bump to Rimraf 6 (#28214) @qmonmert
  • angular: update to Angular v19 (#28114) @mshima
  • Bump transitional dependencies (#28190) @github-actions
  • Fix upgrade Chai (#28137) @qmonmert
  • Bump transitional dependencies (#28140) @github-actions
  • angular: add experimental esbuild bundler support (#28003) @mshima
  • Update Spring Boot to v3.4.0 (#27963) @github-actions
  • Bump transitional dependencies (#28037) @github-actions
  • Reactivate Couchbase for SB3 (#27972) @kamilkrzywanski
  • [React] react-router v7 (#27985) @qmonmert
  • Bump transitional dependencies (#27971) @github-actions
  • Fix upgrade: dot-properties from 1.0.1 to 1.1.0 (#27964) @qmonmert
  • internal: drop types-export files (#27933) @mshima
  • Bump transitional dependencies (#27896) @github-actions
  • adjusts for blueprints (#27874) @mshima
  • Bump transitional dependencies (#27848) @github-actions
  • [Angular] Fix bump the ngx-translate group (#27804) @qmonmert
  • vue: replace @module-federation/utilities with @module-federation/enhanced/runtime (#27774) @mshima
  • Bump transitional dependencies (#27767) @github-actions