create-spring-boot-java-project

Create Spring Boot Java Project Skeleton

5 stars

Best use case

create-spring-boot-java-project is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Create Spring Boot Java Project Skeleton

Teams using create-spring-boot-java-project should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/create-spring-boot-java-project/SKILL.md --create-dirs "https://raw.githubusercontent.com/pleaseai/claude-code-plugins/main/plugins/java-development/skills/create-spring-boot-java-project/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/create-spring-boot-java-project/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How create-spring-boot-java-project Compares

Feature / Agentcreate-spring-boot-java-projectStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Create Spring Boot Java Project Skeleton

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Create Spring Boot Java project prompt

- Please make sure you have the following software installed on your system:

  - Java 21
  - Docker
  - Docker Compose

- If you need to custom the project name, please change the `artifactId` and the `packageName` in [download-spring-boot-project-template](#download-spring-boot-project-template)

- If you need to update the Spring Boot version, please change the `bootVersion` in [download-spring-boot-project-template](#download-spring-boot-project-template)

## Check Java version

- Run following command in terminal and check the version of Java

```shell
java -version
```

## Download Spring Boot project template

- Run following command in terminal to download a Spring Boot project template

```shell
curl https://start.spring.io/starter.zip \
  -d artifactId=${input:projectName:demo-java} \
  -d bootVersion=3.4.5 \
  -d dependencies=lombok,configuration-processor,web,data-jpa,postgresql,data-redis,data-mongodb,validation,cache,testcontainers \
  -d javaVersion=21 \
  -d packageName=com.example \
  -d packaging=jar \
  -d type=maven-project \
  -o starter.zip
```

## Unzip the downloaded file

- Run following command in terminal to unzip the downloaded file

```shell
unzip starter.zip -d ./${input:projectName:demo-java}
```

## Remove the downloaded zip file

- Run following command in terminal to delete the downloaded zip file

```shell
rm -f starter.zip
```

## Change directory to the project root

- Run following command in terminal to change directory to the project root

```shell
cd ${input:projectName:demo-java}
```

## Add additional dependencies

- Insert `springdoc-openapi-starter-webmvc-ui` and `archunit-junit5` dependency into `pom.xml` file

```xml
<dependency>
  <groupId>org.springdoc</groupId>
  <artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
  <version>2.8.6</version>
</dependency>
<dependency>
  <groupId>com.tngtech.archunit</groupId>
  <artifactId>archunit-junit5</artifactId>
  <version>1.2.1</version>
  <scope>test</scope>
</dependency>
```

## Add SpringDoc, Redis, JPA and MongoDB configurations

- Insert SpringDoc configurations into `application.properties` file

```properties
# SpringDoc configurations
springdoc.swagger-ui.doc-expansion=none
springdoc.swagger-ui.operations-sorter=alpha
springdoc.swagger-ui.tags-sorter=alpha
```

- Insert Redis configurations into `application.properties` file

```properties
# Redis configurations
spring.data.redis.host=localhost
spring.data.redis.port=6379
spring.data.redis.password=rootroot
```

- Insert JPA configurations into `application.properties` file

```properties
# JPA configurations
spring.datasource.driver-class-name=org.postgresql.Driver
spring.datasource.url=jdbc:postgresql://localhost:5432/postgres
spring.datasource.username=postgres
spring.datasource.password=rootroot
spring.jpa.hibernate.ddl-auto=update
spring.jpa.show-sql=true
spring.jpa.properties.hibernate.format_sql=true
```

- Insert MongoDB configurations into `application.properties` file

```properties
# MongoDB configurations
spring.data.mongodb.host=localhost
spring.data.mongodb.port=27017
spring.data.mongodb.authentication-database=admin
spring.data.mongodb.username=root
spring.data.mongodb.password=rootroot
spring.data.mongodb.database=test
```

## Add `docker-compose.yaml` with Redis, PostgreSQL and MongoDB services

- Create `docker-compose.yaml` at project root and add following services: `redis:6`, `postgresql:17` and `mongo:8`.

  - redis service should have
    - password `rootroot`
    - mapping port 6379 to 6379
    - mounting volume `./redis_data` to `/data`
  - postgresql service should have
    - password `rootroot`
    - mapping port 5432 to 5432
    - mounting volume `./postgres_data` to `/var/lib/postgresql/data`
  - mongo service should have
    - initdb root username `root`
    - initdb root password `rootroot`
    - mapping port 27017 to 27017
    - mounting volume `./mongo_data` to `/data/db`

## Add `.gitignore` file

- Insert `redis_data`, `postgres_data` and `mongo_data` directories in `.gitignore` file

## Run Maven test command

- Run maven clean test command to check if the project is working

```shell
./mvnw clean test
```

## Run Maven run command (Optional)

- (Optional) `docker-compose up -d` to start the services, `./mvnw spring-boot:run` to run the Spring Boot project, `docker-compose rm -sf` to stop the services.

## Let's do this step by step

Related Skills

wp-project-triage

5
from pleaseai/claude-code-plugins

Use when you need a deterministic inspection of a WordPress repository (plugin/theme/block theme/WP core/Gutenberg/full site) including tooling/tests/version hints, and a structured JSON report to guide workflows and guardrails.

java-springboot

5
from pleaseai/claude-code-plugins

Get best practices for developing applications with Spring Boot.

java-junit

5
from pleaseai/claude-code-plugins

Get best practices for JUnit 5 unit testing, including data-driven tests

java-docs

5
from pleaseai/claude-code-plugins

Ensure that Java types are documented with Javadoc comments and follow best practices for documentation.

recipe-create-vacation-responder

5
from pleaseai/claude-code-plugins

Enable a Gmail out-of-office auto-reply with a custom message and date range.

recipe-create-task-list

5
from pleaseai/claude-code-plugins

Set up a new Google Tasks list with initial tasks.

recipe-create-shared-drive

5
from pleaseai/claude-code-plugins

Create a Google Shared Drive and add members with appropriate roles.

recipe-create-presentation

5
from pleaseai/claude-code-plugins

Create a new Google Slides presentation and add initial slides.

recipe-create-meet-space

5
from pleaseai/claude-code-plugins

Create a Google Meet meeting space and share the join link.

recipe-create-gmail-filter

5
from pleaseai/claude-code-plugins

Create a Gmail filter to automatically label, star, or categorize incoming messages.

recipe-create-feedback-form

5
from pleaseai/claude-code-plugins

Create a Google Form for feedback and share it via Gmail.

recipe-create-expense-tracker

5
from pleaseai/claude-code-plugins

Set up a Google Sheets spreadsheet for tracking expenses with headers and initial entries.