SmallMind is a comprehensive multi-module Java framework for building enterprise applications. It provides a curated set of integrations, abstractions, and utilities designed to work together coherently across the full stack of a modern Java application — from persistence and messaging to scheduling, web services, and observability.
The project targets Java 25 and is built with Maven. It integrates with widely-adopted libraries and platforms including Spring, Hibernate, Jakarta EE, Jetty, Netty, Kafka, RabbitMQ, MongoDB, and AWS, providing a consistent programming model across all of them.
Licensed under the GNU Affero General Public License v3 and GNU Lesser General Public License v3.
The following documentation covers each functional area of the framework:
-
Ansible — Configuration and provisioning integration
-
Artifact — Artifact management and packaging utilities
-
Batch — Batch processing support built on Spring Batch
-
Bayeux — CometD/Bayeux protocol support for server-sent events and WebSocket messaging
-
Claxon — Alerting and notification infrastructure
-
Doppelganger — Object cloning and transformation utilities
-
File — File handling and storage abstractions
-
Kafka — Apache Kafka producer and consumer integration
-
Liquibase — Database schema migration support via Liquibase
-
Memcached — Memcached client integration and caching abstractions
-
MongoDB — MongoDB driver integration and document mapping
-
NutsNBolts — Core utilities, foundations, and shared infrastructure
-
Persistence — JPA/Hibernate persistence layer with QueryDSL support
-
Phalanx — Distributed coordination and cluster management
-
Quorum — Consensus and distributed locking primitives
-
Schedule — Job scheduling via Quartz
-
Scribe — Logging infrastructure built on SLF4J and Log4j 2
-
Sleuth — Distributed tracing and observability
-
Spark — Lightweight in-process event and messaging bus
-
Web — Web layer support including REST (Jersey), Jetty, and WebSocket