# spring-projects/spring-modulith

Modular applications with Spring Boot

Repository: https://github.com/spring-projects/spring-modulith
Canonical: https://ross.abutalabs.com/products/spring-modulith
Homepage: https://spring.io/projects/spring-modulith
Language: Java
License: Apache-2.0
License Family: permissive
Topics: architecture, modularity, spring-boot
Last push: 2026-09-02T17:02:51+00:00

## Health v2 (maintenance only)
Score: 100/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 100, release rhythm 99, longevity 100
- inputs: {"age_days": 1520, "days_push": 0, "days_rel": 7, "gap_med": 0.0, "n_releases_24m": 51}
- flags: no_readme
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1177, forks 217 (observed 2026-09-03T02:15:18.083609+00:00)

## What it is
Spring Modulith is a Spring Boot extension for building modular monolithic applications with domain-driven module boundaries. It verifies module structure, supports module-level integration testing, observability, and generates architecture documentation snippets.

## Use cases
- enforce modular package boundaries in a Spring Boot app
- verify architectural rules between application modules
- run integration tests for individual modules
- generate C4/UML component diagrams of modules
- document application module canvases
- observe module-level application behavior

## When to choose
- building a modular monolith with Spring Boot
- wanting architectural verification in tests
- needing auto-generated architecture docs

## When to avoid
- building microservices instead of a modular monolith
- not using Spring Boot or the JVM

## Facets
- artifact type: framework
- maturity: active
- function: testing, documentation, developer-tools
- domain: backend, web-development, developer-tools
- platform: jvm
- tags: spring-boot, modular-architecture, modulith, architecture-verification, event-driven, architecture

## Member repositories
- spring-projects/spring-modulith (main) score 100

## Provenance
- Observed fields: from GitHub, fetched 2026-09-03T02:15:18.083609+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T06:28:43.806580+00:00, confidence not recorded.
  - homepage: https://spring.io/projects/spring-modulith (fetched 2026-08-29T12:34:37.866284+00:00, sha 9e7d9afa32e0)
  - site_page: https://spring.io/quickstart (fetched 2026-08-29T12:34:37.870945+00:00, sha fc64dd950363)
  - site_page: https://spring.io/projects/spring-restdocs (fetched 2026-08-29T12:34:37.874772+00:00, sha 1e2a101b77d3)
  - site_page: https://docs.spring.io/spring-modulith/reference/documentation.html (fetched 2026-08-29T12:34:37.876452+00:00, sha d33e67b0ecb5)
  - site_page: https://enterprise.spring.io (fetched 2026-08-29T12:34:37.869029+00:00, sha 85ac7d6d5114)
  - site_page: https://enterprise.spring.io/lts-releases (fetched 2026-08-29T12:34:37.872740+00:00, sha 3251cc8760b6)
- Data as of 2026-08-30T08:39:29.467469+00:00.
