You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+68-7Lines changed: 68 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,53 @@
1
-
# Spring PetClinic Sample Application [](https://github.com/spring-projects/spring-petclinic/actions/workflows/maven-build.yml)[](https://github.com/spring-projects/spring-petclinic/actions/workflows/gradle-build.yml)
1
+
# Spring PetClinic Sample Application [](https://github.com/spring-petclinic/spring-petclinic-modulith/actions/workflows/maven-build.yml)[](https://github.com/spring-petclinic/spring-petclinic-modulith/actions/workflows/gradle-build.yml)
2
+
3
+
[](https://gitpod.io/#https://github.com/spring-petclinic/spring-petclinic-modulith)[](https://github.com/codespaces/new?hide_repo_select=true&ref=main&repo=7517918)
4
+
5
+
This fork of Spring PetClinic demonstrates how to structure a Spring Boot application as a set of well-defined, loosely coupled modules using **[Spring Modulith](https://docs.spring.io/spring-modulith/reference/)**.
6
+
7
+
## Spring Modulith Architecture
8
+
9
+
The application is organized into **three application modules**, each owning its domain logic, persistence layer, and web controllers:
10
+
11
+
```
12
+
org.springframework.samples.petclinic/
13
+
├── owner/ ← Public API (VisitBooked event record)
[](https://gitpod.io/#https://github.com/spring-projects/spring-petclinic)[](https://github.com/codespaces/new?hide_repo_select=true&ref=main&repo=7517918)
4
51
5
52
## Understanding the Spring Petclinic application with a few diagrams
6
53
@@ -10,6 +57,7 @@ See the presentation here:
10
57
> **Note:** These slides refer to a legacy, pre–Spring Boot version of Petclinic and may not reflect the current Spring Boot–based implementation.
11
58
> For up-to-date information, please refer to this repository and its documentation.
12
59
60
+
Module architecture documentation (C4 diagrams, component diagrams) is automatically generated by the `Documenter` test into the `target/spring-modulith-docs/` directory.
13
61
14
62
## Run Petclinic locally
15
63
@@ -19,8 +67,8 @@ Java 17 or later is required for the build, and the application can run with Jav
If you are using Maven, you can start the application on the command-line as follows:
26
74
@@ -140,9 +188,22 @@ The following items should be installed in your system:
140
188
141
189
|Spring Boot Configuration | Class or Java property files |
142
190
|--------------------------|---|
143
-
|The Main Class | [PetClinicApplication](https://github.com/spring-projects/spring-petclinic/blob/main/src/main/java/org/springframework/samples/petclinic/PetClinicApplication.java) |
0 commit comments