# kmp-spring-petclinic **Repository Path**: mirrors_Kotlin/kmp-spring-petclinic ## Basic Information - **Project Name**: kmp-spring-petclinic - **Description**: The project is a KMP variant of the original Spring Pet Clinic. It contains Spring Boot backend and Angular frontend that share business logic between each other. - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-06-28 - **Last Updated**: 2026-04-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Fullstack Kotlin Spring Pet Clinic with Angular The project is a Kotlin + Angular fullstack variant of the original Spring Pet Clinic. It contains Spring Boot backend and Angular frontend that share business logic between each other. ## Architecture ![architecture.png](architecture.png) Key characteristics: - [Angular 17](https://angular.dev) with TypeScript for the frontend. - [Spring Boot 3.5.0](https://spring.io/projects/spring-boot) with Kotlin for the backend. - [Kotlin multiplatform support](https://kotlinlang.org/docs/multiplatform.html) to share code between frontend and backend using a shared module - [Akkurate](https://akkurate.dev) to describe validation rules for DTOs - [Ktorfit](https://github.com/Foso/Ktorfit) to generate API services for the frontend app - [HSQLDB](https://hsqldb.org/) as a DB which gets populated at startup with data to simplify the showcase (could be any other DB) ## Requirements - Java 17+ (can be installed via [asdf](https://github.com/asdf-vm/asdf) or [SDKMAN!](https://sdkman.io/)) - Node.js 20+ (can be installed via [asdf](https://github.com/asdf-vm/asdf) or [nvm](https://nodejs.org/en/download)) ## Getting started To run just the application. - Install frontend dependencies with `npm install` - Run the backend with `./gradlew :backend:bootRun` - Run the frontend with `npm run start:web` - Go to `http://localhost:4200` ## Appreciations The project is combining existing community repositories and intersects their common parts with the power of Kotlin Multiplatform. The creation of such a showcase would be much harder without the solutions listed below: - https://github.com/junoyoon/spring-petclinic-rest-kotlin - https://github.com/spring-petclinic/spring-petclinic-angular Also, take a look at the [fullstack variant of the Spring Pet Clinic with Compose Multiplatform](https://github.com/sdeleuze/spring-petklinik)