moduliths
jmolecules
moduliths | jmolecules | |
---|---|---|
5 | 4 | |
819 | 1,289 | |
- | 2.4% | |
0.0 | 7.5 | |
about 2 years ago | 2 months ago | |
Java | Java | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
moduliths
-
Spring Modulith: have we reached modularity maturity?
Even since the microservices craze started, some cooler heads have prevailed. In particular, Oliver Drotbohm, a developer on the Spring framework, has been a long-time proponent of the moduliths alternative. The idea is to keep a monolith but design it around modules.
- Monolith app seperated on modules?
-
Can you recommend any Github Spring Boot projects that can be used as a reference for good practices along the lines of documentation, automated testing, and deployment?
Not sure if that will be complete example but for coding I would go trough Spring dev members in Github: - Olivier Gierke : https://github.com/moduliths/moduliths (Modulith) - Rossen Stoyanchev : https://github.com/rstoyanchev - Dave Syer : https://github.com/dsyer
-
archifacts is launched
Conceptually, there a lot of similarities to Moduliths. Moduliths helps you to build modular Spring Boot applications which are preferred to be deployed as a single unit. Like archifacts Moduliths uses ArchUnit to enforce certain architectural constraints and - based on some rules - it's able to identify the application's building blocks.
-
What are some most useful things you coded with ArchUnit?
Moduliths - a Spring Boot extension that allows to structure your application into logical modules, test those individually and derive high-level documentation for the structure created.
jmolecules
- Libraries to help developers express architectural abstractions in Java code
-
Spring Modulith: have we reached modularity maturity?
Spring Modulith is the successor of Oliver Drotbohm's Moduliths project (with a trailing S). It uses both ArchUnit and jMolecules. At the time of this writing, it's experimental.
- jMolecules 2021.2.0 released
-
Deprecating JPA no-args constructors
You could move towards modeling your code around DDD building blocks (like aggregates etc.) and declare those concepts in code explicitly using jMolecules types. There is a dedicated jMolecules Integrations ByteBuddy Plugin, that would then add the necessary boilerplate code and default mappings required by the expressed concept. This makes the code shown here a fully working JPA model. You can argue that the lack of JPA oddities is odd itself in the first place but I like the idea of expressing the architectural concept explicitly and the technology integration completely flowing from that.
What are some alternatives?
ArchUnit-Examples - Examples for ArchUnit (A Java architecture test library, to specify and assert architecture rules in plain Java)
amber-docs - https://openjdk.org/projects/amber
parallel-collectors - Parallel Collectors is a toolkit easing parallel collection processing in Java using Stream API.
educational-platform - Modular Monolith Java application with DDD
pf4j - Plugin Framework for Java (PF4J)
cp-ddd-framework - 轻量级DDD正向/逆向业务建模框架,支撑复杂业务系统的架构演化!
RIBs - Uber's cross-platform mobile architecture framework - Android Repository
spring-modulith-sample
buckpal - An example approach for implementing a Clean/Hexagonal Architecture
archifacts - archifacts is a library to extract your architectural concepts out of your application's code
archi-modelrepository-plugin - coArchi - a plug-in to share and collaborate on Archi models.
persistence