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.
Key characteristics:
- Angular 17 with TypeScript for the frontend.
- Spring Boot 3.5.0 with Kotlin for the backend.
- Kotlin multiplatform support to share code between frontend and backend using a shared module
- Akkurate to describe validation rules for DTOs
- Ktorfit to generate API services for the frontend app
- HSQLDB as a DB which gets populated at startup with data to simplify the showcase (could be any other DB)
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
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