Coding
PromptBeginner5 minmarkdown
Markdown Converter
Agent skill for markdown-converter
7
- Root project uses Gradle Kotlin DSL with DDD-aligned modules: `only-danmuku-domain` holds aggregates and events under
Sign in to like and favorite skills
only-danmuku-domain holds aggregates and events under
src/main/kotlin/edu/only4/danmuku, with matching tests in src/test/kotlin.only-danmuku-application hosts commands, queries, and subscribers; keep generated KSP sources under
build/generated/ksp/main/kotlin committed only when required.only-danmuku-adapter exposes REST endpoints in adapter/portal/api, co-locating DTOs and validation annotations.only-danmuku-start bootstraps the Spring Boot entrypoint and shared configuration; runtime assets sit in
src/main/resources.design/*_gen.json, while reusable templates live in template/_tpl; update JSON
first, then regenerate code../gradlew build compiles every module, runs code generation hooks, and assembles artifacts../gradlew test executes the JUnit 5/MockK test suites; run before pushing to catch regressions../gradlew :only-danmuku-start:bootRun launches the API locally with the default Spring profile../gradlew clean build -x test is handy for validating codegen-driven refactors when test execution is unchanged.代码实现规约.md: controllers in adapter/portal/api, commands in
application/.../commands, queries in .../queries.VideoDraftCreatedDomainEvent), methods and fields in lowerCamelCase, and suffix
transport models with Request/Response.KnownException for domain validation errors, JSR-303 annotations for DTO checks, and keep logging to actionable
lifecycle events.src/test/kotlin, mirroring the production package structure."should return recommended videos") and MockK for collaborators; prefer clear
Given-When-Then blocks.only-danmuku-start with @SpringBootTest, isolating Redis or HTTP clients via stubs or
embedded alternatives.type(scope): summary (e.g., feat(video): 增强视频弹幕返回); keep type lowercase and scope
meaningful.design/*_gen.json or generated
sources../gradlew build and sync shared assets
promptly.