Skip to main content

Spring Boot Generator

Spring Boot Generator is an interactive CLI tool that generates production-ready Spring Boot applications in seconds.

It helps developers bootstrap clean, modular, Docker-ready Java projects following industry best practices.


Features

  • Interactive command-line interface
  • Java 17 and 21 support
  • Modular and scalable project structure
  • Clean layered architecture (Controller / Service / Repository)
  • Multi-database support
  • Docker & Docker Compose ready
  • Swagger UI & ReDoc documentation
  • Spring Data JPA + Hibernate
  • Flyway database migrations
  • MapStruct mapper configuration
  • Production-grade pom.xml

🧱 Generated Project Structure

com.example.demo
├── Application.java
├── config
├── modules
│   └── user
│       ├── controller
│       ├── service
│       │   └── impl
│       ├── repository
│       ├── dto
│       ├── entity
│       └── mapper
└── resources
    ├── application.yml
    └── db
        └── migration

Supported Databases

  • PostgreSQL
  • MySQL
  • MariaDB
  • H2 (in-memory)

Each option includes:

  • JDBC driver
  • Hibernate configuration
  • Docker service (if enabled)

📦 Installation

pip install springboot-generator

▶ Usage

springboot-generator

The CLI will guide you through:

  • Base package name
  • Java version
  • Database selection
  • Docker enablement
  • Swagger / ReDoc configuration
  • Module creation

🐳 Docker Usage

cd your-project
docker compose up --build

Access:

  • API: http://localhost:8080
  • Swagger UI: http://localhost:8080/swagger-ui.html
  • ReDoc: http://localhost:8080/redoc.html
  • OpenAPI: http://localhost:8080/v3/api-docs

Database & Migrations

Flyway is enabled by default.

src/main/resources/db/migration

Windows Users

If the command is not recognized:

'springboot-generator' is not recognized

Add to PATH:

C:\Users\<USERNAME>\AppData\Roaming\Python\Python3X\Scripts

Or run:

python -m springboot_generator.main

Requirements

  • Python ≥ 3.9
  • Java ≥ 17
  • Maven ≥ 3.6
  • Docker (optional)

Contributing

Contributions and feedback are welcome.


License

Apache License 2.0

Release files for springboot-generator 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for springboot-generator 0.3.0
File Size Uploaded
springboot_generator-0.3.0.tar.gz 16.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for springboot-generator 0.3.0
File Interpreter ABI Platform
springboot_generator-0.3.0-py3-none-any.whl Python 3 none any Details

Total release size: 32.3 kB

Release files / springboot_generator-0.3.0.tar.gz

Download URL springboot_generator-0.3.0.tar.gz
Size 16.4 kB
Tags Source
SHA-256 checksum
How to use checksums
981b16a0f577270fcfcf1e73bfbb4df6124c43e93bf8b6822e3b23623520a920
BLAKE2b-256 checksum
How to use checksums
24e3683bb59d7071441b44e1e379ba71743da119174c8be8e89e9f1732ee0113
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.3

Release files / springboot_generator-0.3.0-py3-none-any.whl

Download URL springboot_generator-0.3.0-py3-none-any.whl
Size 15.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
fcbc872b21c97fa0aa3392eae862380cfcbbb75bc1b99ade2cb0ba1d296b27f4
BLAKE2b-256 checksum
How to use checksums
7bd6aaa3c755e9eeb3dc782ba75b857dd96c204b20a160d7285f2697816a5eb8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.3

Release history Release notifications | RSS feed

This release

0.3.0 This release

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page