Overview of jMolecules
mainjMolecules is a set of libraries designed to help developers implement domain models in plain Java by explicitly expressing architectural concepts. It aims to keep domain-specific code free from technical dependencies, reduce boilerplate, and enable automatic documentation and architectural validation.
Key capabilities include:
- Expressing DDD concepts: Using annotations or a type-based model to define Value Objects, Entities, and Aggregate Roots.
- Expressing architectural styles: Marking code as part of Layered, Onion, or Hexagonal architectures.
- Tool integration: Enabling automated augmentation (e.g., Spring/JPA integrations) and architectural rule checking (e.g., ArchUnit, jQAssistant).