8 Repos
Guidance on building single-unit applications structured into independent, feature-based modules.
Distinguishing note: Distinct from standard monoliths by emphasizing internal modularity and boundary enforcement.
Explore 8 awesome GitHub repositories matching software engineering & architecture · Modular Monoliths. Refine with filters or upvote what's useful.
This project is a comprehensive educational resource focused on the principles, patterns, and trade-offs required to design scalable, reliable, and high-performance distributed systems. It provides a structured curriculum that covers the fundamental architectural strategies necessary for building modern software infrastructure, ranging from high-level system decomposition to low-level networking and data management. The repository distinguishes itself by offering deep dives into complex architectural patterns, such as microservices-based decomposition, event-driven communication, and command-
A Modular Monolith is an approach where we build and deploy a single application (that's the Monolith part), but we build it in a way that breaks up the code into independent modules for each of the features needed in
This project provides a structured template for building enterprise applications using a modular monolith architecture. It demonstrates how to organize complex business logic into independent, domain-specific modules that remain contained within a single deployment unit. The architecture enforces strict boundaries between components to minimize coupling and complexity. It utilizes domain-driven design principles to map software components directly to real-world business concepts, ensuring that logic remains independent of infrastructure concerns. Communication between these isolated modules i
Provides a structured template for building enterprise applications as modular monoliths.
This project is a collection of software engineering principles and architectural design patterns designed to minimize the mental effort required to understand and maintain source code. It serves as a guide for implementing clean code methodologies and architectural simplification to reduce the overall cognitive load on developers. The framework emphasizes aligning module boundaries and ubiquitous language with business stakeholders to prevent architectural ripple effects. It advocates for balancing service granularity to avoid the overhead of distributed monoliths and suggests favoring objec
Advocates for modular monoliths to avoid the complexity and network overhead of distributed monoliths.
This project is a production-ready starter kit and boilerplate for building multi-tenant software-as-a-service applications using .NET and React. It provides a multi-tenant application framework and a cloud-native infrastructure kit designed to support scalable cloud services. The project distinguishes itself through a modular monolith architecture that organizes business logic into isolated bounded contexts to prevent code entanglement. It implements comprehensive SaaS identity management, including role-based access control, account impersonation, and strict tenant data isolation across the
Utilizes a modular monolith architecture to organize business logic into isolated domain modules.
Dieses Projekt ist eine Referenzimplementierung von Domain-Driven-Design-Mustern, funktionaler Domänenmodellierung und ereignisgesteuerter Zustands-Koordination. Es demonstriert die Anwendung strategischer und taktischer Entwurfsmuster zur Verwaltung komplexer Geschäftsanforderungen. Die Implementierung nutzt ein funktionales Domänenmodell mit reinen Funktionen und unveränderlichen Objekten zur Verwaltung von Zustandsübergängen und Seiteneffekten. Sie bietet eine Command-Query-Responsibility-Segregation-Architektur zur Trennung von Lese- und Schreibmodellen, neben ereignisgesteuerter Koordination zur Wahrung der Konsistenz über autonome Geschäftsgrenzen hinweg. Die Codebasis integriert eine modulare Monolithen-Architektur unter Verwendung von Bounded Contexts und hexagonalem Layering, um Kernlogik von der Infrastruktur zu isolieren. Die Qualitätssicherung erfolgt durch eine Suite für verhaltensgesteuerte Entwicklung (BDD), die die Ubiquitous Language widerspiegelt, um Geschäftsszenarien zu verifizieren, sowie automatisierte Tests, die architektonische Constraints durchsetzen. Das Projekt wendet diese Muster auf eine Bibliotheksverwaltungsdomäne an und deckt Katalogpflege, Ausleih-Workflows, Reservierungsvalidierungen und die Nachverfolgung überfälliger Rückgaben ab.
Organizes the system into independent bounded contexts within a single unit to maintain clear boundaries.
Implementation of a bulletproof node.js API 🛡️
Organizes the boot process into small, testable loader files for Express and database setup.
This project is a distributed systems design framework and architecture guide. It provides technical resources for designing, deploying, and coordinating independent network services. The framework establishes a structured methodology for migrating monolithic applications into decentralized services by separating frontend and backend concerns. It serves as a reference for event-driven architecture, focusing on maintaining data consistency across network boundaries using event sourcing and local transaction records. The project covers a broad range of capabilities including distributed servic
Guidance on converting single-tier applications into distributed services by separating frontend and backend.
Dieses Projekt dient als umfassende Bildungsressource für die Implementierung modularer Monolithen und Microservices innerhalb von .NET-Umgebungen. Es konzentriert sich auf die Anwendung von Domain-Driven-Design-Prinzipien zur Verwaltung komplexer Geschäftslogik und bietet einen strukturierten Ansatz für den Aufbau von Systemen, die sich parallel zu sich ändernden Anforderungen weiterentwickeln können. Die Architektur definiert sich durch ihren Fokus auf Modularität und klare Grenzen, wobei Vertical Slices und Bounded Contexts genutzt werden, um Code nach Geschäftsprozessen anstatt nach technischer Schicht zu organisieren. Sie zeichnet sich durch ein systematisches Migrationsframework aus, das es Entwicklern ermöglicht, von einer monolithischen Codebase zu unabhängigen, verteilten Diensten überzugehen. Dies wird durch das Ersetzen interner Kommunikation durch robuste, ereignisgesteuerte Nachrichtenübermittlung und die Sicherstellung erreicht, dass Domänenlogik von Persistenz- und Infrastrukturbelangen entkoppelt bleibt. Das Projekt deckt ein breites Spektrum an Fähigkeiten ab, einschließlich taktischer Domänenmodellierung mit Aggregaten und Entitäten, automatisierter Teststrategien unter Verwendung containerisierter Infrastruktur und der Pflege von Architectural Decision Records zur Nachverfolgung der Design-Evolution. Es bietet zudem Tooling für die Orchestrierung der lokalen Entwicklung und statische Analyse zur Durchsetzung von Qualitätsstandards über unabhängige Module hinweg. Das Repository ist als praktischer Leitfaden strukturiert und bietet eine Schritt-für-Schritt-Methodik für die inkrementelle Skalierung von Softwarearchitekturen.
Provides comprehensive guidance on building single-unit applications structured into independent, feature-based modules.