/java-scaffold
Scaffolds a brand-new Spring Boot project from scratch — build file, package structure, and a starter feature. Use when user asks to "create a new Spring Boot project", "bootstrap a project", "start a new project", "generate a new app", or "scaffold a new service".
$ npx -y skills add ducpm2303/claude-java-plugins --skill java-scaffold --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.
- You can call itInvoke it directly when you want it.
- Slash command
/java-scaffold
Context preview
The summary Claude sees to decide when to auto-load this skill.
Scaffolds a brand-new Spring Boot project from scratch — build file, package structure, and a starter feature. Use when user asks to "create a new Spring Boot project", "bootstrap a project", "start a new project", "generate a new app", or "scaffold a new service".
SKILL.md
java-scaffold.SKILL.mddescription: Scaffolds a brand-new Spring Boot project from scratch — build file, package structure, and a starter feature. Use when user asks to "create a new Spring Boot project", "bootstrap a project", "start a new project", "generate a new app", or "scaffold a new service".
argument-hint: "[describe the project, e.g. 'e-commerce REST API with user management']"
/java-scaffold — New Spring Boot Project Generator
You are a Spring Boot project bootstrapper. Use this skill to create a **new project from scratch**.
> **Already have a project?** Use `/java-crud` instead — it adds a CRUD feature to an existing codebase.
Step 1 — Gather requirements (all at once)
Ask these questions in a single message:
1. **Project name** — e.g., `shop-api`, `user-service` 2. **Java version** — 8, 11, 17, or 21 (recommend 21 for new projects) 3. **Spring Boot version** — 2.7.x, 3.2.x, 3.3.x, or 4.0.x (recommend 3.3.x; 4.0.x requires Java 17+) 4. **Build tool** — Maven or Gradle 5. **Base package** — e.g., `com.example.shop` 6. **First domain entity** — e.g., `Product`, `User`, `Order` 7. **Database** — PostgreSQL, MySQL, or H2 (H2 only for throwaway prototypes)
Confirm before generating:
Scaffolding: shop-api
Java 21 | Spring Boot 3.3.x | Maven
Package: com.example.shop
First entity: Product
Database: PostgreSQL (Testcontainers for tests)
Generate? (yes to proceed)
Step 2 — Generate build file
Use the Maven or Gradle template from `references/templates.md`. Fill in `{spring-boot-version}`, `{project-name}`, and `{java-version}`.
For Spring Boot 4.0.x: uses `jakarta.persistence.*` (same as 3.x). Requires Java 17 minimum.
Step 3 — Generate package structure
Use the directory layout from `references/templates.md`.
Step 4 — Generate application.yml
Use the `application.yml` and `application-dev.yml` templates from `references/templates.md`.
**Note:** Never commit real credentials. Use environment variables or Spring Vault for production secrets.
Step 5 — Generate starter feature
Generate the first entity using the same templates as `/java-crud`:
- Entity class (with `@PrePersist` / `@PreUpdate` timestamps)
- Repository extending `JpaRepository`
- Service with `@Transactional(readOnly = true)` reads
- Controller with `ResponseEntity` returns
- Request/Response DTOs (records for Java 16+, classes for Java 8–15)
- `GlobalExceptionHandler` with `@RestControllerAdvice` — see `references/templates.md`
- Unit test (Mockito)
- Repository integration test (Testcontainers)
**Spring Boot version rules:**
- 3.x+: use `jakarta.persistence.*`, `@SQLRestriction` for soft delete
- 2.x: use `javax.persistence.*`, `@Where(clause = "deleted = false")` for soft delete
Step 6 — Post-generation checklist
- [ ] Run `mvn spring-boot:run` or `./gradlew bootRun` to verify it starts
- [ ] Start a local PostgreSQL: `docker run -p 5432:5432 -e POSTGRES_PASSWORD=postgres postgres:16-alpine`
- [ ] Add Flyway or Liquibase for schema management before going to production
- [ ] Add Spring Boot Actuator for health checks: `spring-boot-starter-actuator`
Next Steps
- Add more features → `/java-crud <EntityName>`
- Review the generated code → `/java-review`
- Generate more tests → `/java-test`
- Security review → `/java-security-check` or `java-security-reviewer` agent
Read more
description: Scaffolds a brand-new Spring Boot project from scratch — build file, package structure, and a starter feature. Use when user asks to "create a new Spring Boot project", "bootstrap a project", "start a new project", "generate a new app", or "scaffold a new service". argument-hint: "[describe the project, e.g. 'e-commerce REST API with user management']"
/java-scaffold — New Spring Boot Project Generator
You are a Spring Boot project bootstrapper. Use this skill to create a **new project from scratch**.
> **Already have a project?** Use `/java-crud` instead — it adds a CRUD feature to an existing codebase.
Step 1 — Gather requirements (all at once)
Ask these questions in a single message:
1. **Project name** — e.g., `shop-api`, `user-service` 2. **Java version** — 8, 11, 17, or 21 (recommend 21 for new projects) 3. **Spring Boot version** — 2.7.x, 3.2.x, 3.3.x, or 4.0.x (recommend 3.3.x; 4.0.x requires Java 17+) 4. **Build tool** — Maven or Gradle 5. **Base package** — e.g., `com.example.shop` 6. **First domain entity** — e.g., `Product`, `User`, `Order` 7. **Database** — PostgreSQL, MySQL, or H2 (H2 only for throwaway prototypes)
Confirm before generating:
Scaffolding: shop-api Java 21 | Spring Boot 3.3.x | Maven Package: com.example.shop First entity: Product Database: PostgreSQL (Testcontainers for tests) Generate? (yes to proceed)
Step 2 — Generate build file
Use the Maven or Gradle template from `references/templates.md`. Fill in `{spring-boot-version}`, `{project-name}`, and `{java-version}`.
For Spring Boot 4.0.x: uses `jakarta.persistence.*` (same as 3.x). Requires Java 17 minimum.
Step 3 — Generate package structure
Use the directory layout from `references/templates.md`.
Step 4 — Generate application.yml
Use the `application.yml` and `application-dev.yml` templates from `references/templates.md`.
**Note:** Never commit real credentials. Use environment variables or Spring Vault for production secrets.
Step 5 — Generate starter feature
Generate the first entity using the same templates as `/java-crud`:
- Entity class (with `@PrePersist` / `@PreUpdate` timestamps)
- Repository extending `JpaRepository`
- Service with `@Transactional(readOnly = true)` reads
- Controller with `ResponseEntity` returns
- Request/Response DTOs (records for Java 16+, classes for Java 8–15)
- `GlobalExceptionHandler` with `@RestControllerAdvice` — see `references/templates.md`
- Unit test (Mockito)
- Repository integration test (Testcontainers)
**Spring Boot version rules:**
- 3.x+: use `jakarta.persistence.*`, `@SQLRestriction` for soft delete
- 2.x: use `javax.persistence.*`, `@Where(clause = "deleted = false")` for soft delete
Step 6 — Post-generation checklist
- [ ] Run `mvn spring-boot:run` or `./gradlew bootRun` to verify it starts
- [ ] Start a local PostgreSQL: `docker run -p 5432:5432 -e POSTGRES_PASSWORD=postgres postgres:16-alpine`
- [ ] Add Flyway or Liquibase for schema management before going to production
- [ ] Add Spring Boot Actuator for health checks: `spring-boot-starter-actuator`
Next Steps
- Add more features → `/java-crud <EntityName>`
- Review the generated code → `/java-review`
- Generate more tests → `/java-test`
- Security review → `/java-security-check` or `java-security-reviewer` agent
A Claude Code plugin marketplace with 3 focused plugins for Java developers. All plugins support Java 8 through Java 21 and tailor advice to your target Java version.
Other skills on claude-java-plugins.
- /java-adr
Creates, lists, and manages Architecture Decision Records for Java projects. Use when user asks to "create an ADR", "document this decision", "write an architecture decision", "add ADR", "list decisions", "show ADRs", or "record this architectural choice".
Open skill - /java-api-review
Reviews Java REST API design including HTTP methods, status codes, naming, and versioning. Use when user asks to "review my API", "check REST design", "is this good REST", "review endpoints", "API design review", "check my controller", or "review HTTP API".
Open skill - /java-clean-arch
Reviews or implements Clean Architecture / Hexagonal Architecture (Ports & Adapters) and DDD tactical patterns for Java projects. Use when user asks to "apply clean architecture", "implement hexagonal architecture", "add ports and adapters", "apply DDD", "refactor to clean
Open skill - /java-commit
Generates a Conventional Commits message for staged Java changes. Use when user asks to "write a commit message", "help me commit", "what should my commit say", "summarize my changes", "draft a commit", or "create commit message".
Open skill - /java-concurrency-review
Reviews Java code for thread safety, race conditions, deadlocks, and Java 21 virtual thread compatibility. Use when user asks to "review concurrency", "is this thread safe", "check for race conditions", "concurrency issues", or "virtual thread compatible".
Open skill - /java-design-pattern
Detects GoF patterns in Java code or recommends the right pattern for a problem. Use when user asks to "what pattern is this", "detect design patterns", "suggest a pattern", "should I use factory", "which design pattern", or "recommend a pattern for".
Open skill

