Claude Agent Skill · by Github

Create Spring Boot Kotlin Project

Generates a complete Spring Boot Kotlin project skeleton with reactive dependencies, database connections, and local development infrastructure. Downloads the p

Install
Terminal · npx
$npx skills add https://github.com/github/awesome-copilot --skill create-spring-boot-kotlin-project
Works with Paperclip

How Create Spring Boot Kotlin Project fits into a Paperclip company.

Create Spring Boot Kotlin Project drops into any Paperclip agent that handles this kind of work. Assign it to a specialist inside a pre-configured PaperclipOrg company and the skill becomes available on every heartbeat — no prompt engineering, no tool wiring.

S
SaaS FactoryPaired

Pre-configured AI company — 18 agents, 18 skills, one-time purchase.

$27$59
Explore pack
Source file
SKILL.md147 lines
Expand
---name: create-spring-boot-kotlin-projectdescription: 'Create Spring Boot Kotlin Project Skeleton'--- # Create Spring Boot Kotlin project prompt - Please make sure you have the following software installed on your system:   - Java 21  - Docker  - Docker Compose - If you need to custom the project name, please change the `artifactId` and the `packageName` in [download-spring-boot-project-template](./create-spring-boot-kotlin-project.prompt.md#download-spring-boot-project-template) - If you need to update the Spring Boot version, please change the `bootVersion` in [download-spring-boot-project-template](./create-spring-boot-kotlin-project.prompt.md#download-spring-boot-project-template) ## Check Java version - Run following command in terminal and check the version of Java ```shelljava -version``` ## Download Spring Boot project template - Run following command in terminal to download a Spring Boot project template ```shellcurl https://start.spring.io/starter.zip \  -d artifactId=${input:projectName:demo-kotlin} \  -d bootVersion=3.4.5 \  -d dependencies=configuration-processor,webflux,data-r2dbc,postgresql,data-redis-reactive,data-mongodb-reactive,validation,cache,testcontainers \  -d javaVersion=21 \  -d language=kotlin \  -d packageName=com.example \  -d packaging=jar \  -d type=gradle-project-kotlin \  -o starter.zip``` ## Unzip the downloaded file - Run following command in terminal to unzip the downloaded file ```shellunzip starter.zip -d ./${input:projectName:demo-kotlin}``` ## Remove the downloaded zip file - Run following command in terminal to delete the downloaded zip file ```shellrm -f starter.zip``` ## Unzip the downloaded file - Run following command in terminal to unzip the downloaded file ```shellunzip starter.zip -d ./${input:projectName:demo-kotlin}``` ## Add additional dependencies - Insert `springdoc-openapi-starter-webmvc-ui` and `archunit-junit5` dependency into `build.gradle.kts` file ```gradle.ktsdependencies {  implementation("org.springdoc:springdoc-openapi-starter-webflux-ui:2.8.6")  testImplementation("com.tngtech.archunit:archunit-junit5:1.2.1")}``` - Insert SpringDoc configurations into `application.properties` file ```properties# SpringDoc configurationsspringdoc.swagger-ui.doc-expansion=nonespringdoc.swagger-ui.operations-sorter=alphaspringdoc.swagger-ui.tags-sorter=alpha``` - Insert Redis configurations into `application.properties` file ```properties# Redis configurationsspring.data.redis.host=localhostspring.data.redis.port=6379spring.data.redis.password=rootroot``` - Insert R2DBC configurations into `application.properties` file ```properties# R2DBC configurationsspring.r2dbc.url=r2dbc:postgresql://localhost:5432/postgresspring.r2dbc.username=postgresspring.r2dbc.password=rootroot spring.sql.init.mode=alwaysspring.sql.init.platform=postgresspring.sql.init.continue-on-error=true``` - Insert MongoDB configurations into `application.properties` file ```properties# MongoDB configurationsspring.data.mongodb.host=localhostspring.data.mongodb.port=27017spring.data.mongodb.authentication-database=adminspring.data.mongodb.username=rootspring.data.mongodb.password=rootrootspring.data.mongodb.database=test``` - Create `docker-compose.yaml` at project root and add following services: `redis:6`, `postgresql:17` and `mongo:8`.   - redis service should have    - password `rootroot`    - mapping port 6379 to 6379    - mounting volume `./redis_data` to `/data`  - postgresql service should have    - password `rootroot`    - mapping port 5432 to 5432    - mounting volume `./postgres_data` to `/var/lib/postgresql/data`  - mongo service should have    - initdb root username `root`    - initdb root password `rootroot`    - mapping port 27017 to 27017    - mounting volume `./mongo_data` to `/data/db` - Insert `redis_data`, `postgres_data` and `mongo_data` directories in `.gitignore` file - Run gradle clean test command to check if the project is working ```shell./gradlew clean test``` - (Optional) `docker-compose up -d` to start the services, `./gradlew spring-boot:run` to run the Spring Boot project, `docker-compose rm -sf` to stop the services. Let's do this step by step.