Skip to content

Releases: bsayli/codegen-springboot-initializr

Release 0.2.0

01 Sep 23:17

Choose a tag to compare

🎉 Release 0.2.0

This release marks the first stable version of Codegen Spring Boot Initializr.

It provides a customizable generator for bootstrapping new Spring Boot projects with a clean structure, hexagonal architecture, and CLI support.


✨ Highlights

  • Namespace alignment → migrated base package to io.github.bsayli.codegen.initializr
  • Hexagonal architecture → ports, adapters, and a core service for extensibility
  • CLI runner → generate projects with a single command using spring-boot:run
  • Customizable output → configure groupId, artifactId, and base package
  • Ready-to-run projects → includes pom.xml, .gitignore, application.yml, starter, and test class
  • Zip packaging → generated project is delivered as a .zip archive
  • CI/CD ready → GitHub Actions workflow for build & test is included
  • Social preview → updated preview banner under docs/images/social-preview.png

🚀 Quick Start

# 1) Clone the repo
git clone https://github.com/bsayli/codegen-springboot-initializr.git
cd codegen-springboot-initializr

# 2) Build
mvn clean install

# 3) Run in CLI mode
mvn spring-boot:run -Dspring-boot.run.profiles=cli \
  -Dspring-boot.run.arguments="--groupId=com.example --artifactId=demo-app --packageName=com.example.demo --outputDir=./target/generated-projects --overwrite=true"

Generated project archive will be created under:

./target/generated-projects/demo-app/demo-app.zip

🧩 Architecture

  • Ports — abstractions like ProjectBuildGenerator, ApplicationYamlGenerator, ProjectArchiver
  • Adapters — concrete implementations (Spring Boot, Maven, FreeMarker)
  • Core — orchestration service that drives project generation

This design ensures extensibility, testability, and maintainability.


🛠 Tech Stack

  • Java 21
  • Spring Boot 3.5
  • Maven 3.9+
  • FreeMarker templates
  • JUnit 5

📎 Assets

  • codegen-springboot-initializr-0.2.0.jar
  • Example generated project zip
  • Updated social-preview.png

🛡 License

Released under the MIT License.


Author: Barış Saylı
GitHub: [bsayli](https://github.com/bsayli)

Codegen Spring Boot Initializr 0.1.0

31 Aug 23:55

Choose a tag to compare

• ✨ CLI support for --outputDir option
• 🧱 Hexagonal (ports & adapters) architecture
• 🧪 Comprehensive test coverage (.gitignore, application.yml, pom, layout, archiver)
• 🧰 FreeMarker & Maven wrapper generation