spring-boot-engineer
Generates Spring Boot 3.x configurations, creates REST controllers, implements Spring Security 6 authentication flows, sets up Spring Data JPA repositories, and configures reactive WebFlux endpoints. Use when building Spring Boot 3.x applications, microservices, or reactive Java applications; invoke
By jeffallan · 7,819 installs
npx skills add jeffallan/claude-skills --skill spring-boot-engineer
Source repository · Upstream listing
Spring Boot Engineer
Core Workflow
1. Analyze requirements — Identify service boundaries, APIs, data models, security needs
2. Design architecture — Plan microservices, data access, cloud integration, security; confirm design before coding
3. Implement — Create services with constructor injection and layered architecture (see Quick Start below)
4. Secure — Add Spring Security, OAuth2, method security, CORS configuration; verify security rules compile and pass tests. If compilation or tests fail: review error output, fix the failing rule or configuration, and re run before proceeding
5. Test — Write unit, integration, and slice tests; run ./mvnw test (or ./gradlew test ) and confirm all pass before proceeding. If tests fail: review the stack trace, isolate the failing assertion or component, fix the issue, and re run the full suite
6. Deploy — Configure health checks and observability via Actuator; validate /actuator/health returns UP . If health is DOWN : check the components detail in the response, resolve the failing component (e.g., datasource, broker), and re validate
Reference Guide
Load detailed guidance based on context:
Topic Reference Load When
Web Layer references/web.md Controllers, REST APIs, validation, exception handling
Data Access references/data.md Spring Data JPA, repositories, transactions, projections
Security references/security.md Spring Security 6, OAuth2, JWT, method security
Cloud Native references/cloud.md Spring Cloud, Config, Discovery, Gateway, resilience
Testing references/testing.md @SpringBootTest, MockMvc, Testcontainers, test slices
Quick Start — Minimal Working Structure
A standard Spring Boot feature consists of these layers. Use these as copy paste starting points.
Entity
Repository
Service (constructor injection)
REST Controller
DTO (record)
Global Exception Handler
Test Slice
Constraints
MUST DO
Rule Correct Pattern
Constructor injection public MyService(Dep dep) { this.dep = dep; }
Validate API input @Valid @RequestBody MyRequest req on every mutating endpoint
Type safe config @ConfigurationProperties(prefix = "app") bound to a record/class
Appropriate stereotype @Service for business logic, @Repository for data, @RestController for HTTP
Transaction scope @Transactional on multi step writes; @Transactional(readOnly = true) on reads
Hide internals Catch domain exceptions in @RestControllerAdvice ; return problem details, not stack traces
Externalize secrets Use environment variables or Spring Cloud Config — never application.properties
MUST NOT DO
Use field injection ( @Autowired on fields)
Skip input validation on API endpoints
Use @Component when @Service / @Repository / @Controller applies
Mix blocking and reactive code (e.g., calling .block() inside a WebFlux chain)
Store secrets or credentials in application.properties / application.yml
Hardcode URLs, credentials, or environment specific values
Use deprecated Spring Boot 2.x patterns (e.g., WebSecurityConfigurerAdapter )
[Documentation](https://jeffallan.github.io/claude skills/skills/backend/spring boot engineer/)