AGENTS.md — Pet Service Management System (server)
Stack
- Spring Boot 3.5.15 + MyBatis 3.0.5 + MySQL
- Java 17, Maven (wrapper at
./mvnw)
Quick commands
./mvnw spring-boot:run # start dev server (port 8080, context-path /api)
./mvnw clean package # build
./mvnw test # run tests
Structure
- Single Maven module; all source under
src/main/java/space/anyi/petServiceManagementSystem/server/
- Config at
src/main/resources/application.yaml
- No tests yet (
src/test/ exists but is empty)
- Frontend lives in sibling
../ui/ directory (Vite + React + TypeScript)
API conventions
- All endpoints prefixed with
/api (set via server.servlet.context-path in yaml)
- Default port:
8080
Coding conventions
- OpenAPI annotations on every controller API — use
@Operation, @Parameter, @Schema from io.swagger.v3.oas.annotations
- DTO / VO for API params — request params use DTO, response data uses VO. Do not expose entities directly in controller
- Business logic in Service layer — Controller only delegates, Service contains
@Transactional logic
- Entity property comments — every field in entity classes must have an inline comment explaining its meaning
- Beginner-friendly style — simple code, high readability over cleverness
- Business logic comments — add inline comments explaining the implementation approach and reasoning at key steps
Notable
build/ and out/ are gitignored (build artifacts)
.mvn/wrapper/maven-wrapper.properties — Maven wrapper pinned version
- No CI, no lint config, no formatter config, no codegen
- No tests exist yet — add them under
src/test/java/space/anyi/petServiceManagementSystem/server/