Skip to content

Module Map

DSM is organized as a multi-module toolkit so teams can pull in only the layers they need.

This page explains module boundaries. If you are integrating DSM into a service, start with the guides and Reference section first.

ModulePurpose
dsm-coreRuntime facade, collection contracts, diagnostics, observability SPI, lease and CRDT primitives
dsm-syncRuntime control-plane and data-plane replication services
dsm-clusterTransport-level cluster membership implementations
dsm-securityMessage signing, replay protection, and cluster admission validation
dsm-spring-boot-autoconfigureRuntime-first Spring Boot autoconfiguration
dsm-spring-boot-starterStarter dependency for standard Boot integration
dsm-examplesRunnable reference examples
dsm-test-supportFakes and reusable test transports
dsm-integration-testEnd-to-end integration coverage

Layered View

text
application code
	|
	v
dsm-core
	|
	+--> collection contracts
	+--> runtime facade
	+--> diagnostics / observability SPI
	|
	+--> used by dsm-spring-boot-* modules
	+--> used by dsm-sync
			|
			+--> replication flows
			+--> repair flows
	|
	+--> paired with dsm-cluster for membership
	+--> paired with dsm-security for secure transport validation

Read dsm-core first. That is where the runtime API surface and collection builders live.

From there:

  • read dsm-sync if you need to understand replication internals
  • read dsm-cluster to choose membership behavior
  • read dsm-security before planning production rollout
  • read the Spring modules only if your service uses Boot

Integration Reading Path

text
first integration?
	|
	+--> Getting Started
	+--> Standalone Quickstart or Spring Boot
	+--> Runtime API / Collection Specs / Collection Handles
	+--> scenario cookbooks
	+--> architecture internals only when needed