name: springboot-init
description: Use when initializing or extending an enterprise Spring Boot monolith or modular monolith with domain-first packages, MyBatis persistence, DTO/record APIs, and scenario-driven security choices such as session, token, external IdP, or machine credentials, plus optional Redis/Kafka/Elasticsearch/OSS/LLM-RAG integration.
springboot-init
Overview
Use this skill as the entry point for reusable enterprise Spring Boot monolith and modular-monolith work. It encodes the default rules for real-world backend projects, not a CRUD scaffold or microservice playbook. Security must be chosen to fit the client type, trust boundary, and identity source rather than assumed from one preferred auth pattern.
When to Use
New enterprise Spring Boot backend initialization.
Adding or refactoring a business domain module.
Standardizing API, security, persistence, exception, cache, search, or messaging boundaries.
Integrating Redis, Kafka, Elasticsearch, OSS, or LLM/RAG collaboration.
Technology Baseline
Spring Boot 3.x and JDK 21.
MyBatis is the default persistence layer.
Use Spring Security when the application exposes protected endpoints.
Select the authentication profile by scenario instead of hardcoding one default across every system.
Keep an existing OAuth2 Resource Server, session, SSO, or equivalent security setup when the repo already uses it.
DTO/record-based API models; direct DTO responses or ResponseEntity.