30 open-source projects similar to dotnet-architecture/eshoponweb, ranked by shared indexed features. Tags may describe platforms or build tools rather than the same primary purpose. Check each project’s use case, license, and deployment requirements before treating it as a replacement.
This project is a comprehensive sample library and implementation guide for ASP.NET Core. It provides a collection of practical examples and projects that demonstrate how to build web applications, RESTful APIs, and high-performance services. The repository focuses on a variety of architectural patterns, including the development of Minimal APIs, contract-first gRPC services, and real-time communication using WebSockets and Server-Sent Events. It includes detailed implementations for user identity and security, such as token-based authentication and CSRF protection. The codebase covers a bro
This project is a reference implementation of Domain-Driven Design, Clean Architecture, and Command Query Responsibility Segregation (CQRS) patterns using the Go programming language. It serves as a sample application to demonstrate how to decouple core domain rules from infrastructure and delivery mechanisms. The system is built as a gRPC microservices architecture, utilizing type-safe communication and service contracts. It implements an event-driven architecture to manage eventual consistency and asynchronous processing, specifically employing the Outbox pattern to ensure reliable messagin
EquinoxProject is an ASP.NET 9 web application template and reference implementation for building enterprise software. It provides a structural boilerplate centered on clean architecture, domain-driven design, and the separation of read and write operations through a command query responsibility segregation framework. The project incorporates event sourcing to track the history of business entities as a sequence of events for auditing and state reconstruction. It utilizes a layered approach to decouple business logic from external dependencies and frameworks. The system includes capabilities
eShopOnContainers is a .NET microservices reference application designed to demonstrate cloud-native architecture patterns. It serves as a sample distributed system that implements domain-driven design and utilizes containerized services. The project is developed as a cross-platform sample compatible with Windows, Linux, and macOS. It utilizes Docker for containerized application deployment and supports orchestration via Azure Kubernetes Service to manage the scaling and availability of its services. The system covers microservices architecture design, asynchronous service communication, and
This project is a reference implementation of Domain-Driven Design patterns, functional domain modeling, and event-driven state coordination. It demonstrates the application of strategic and tactical design patterns to manage complex business requirements. The implementation utilizes a functional domain model with pure functions and immutable objects to manage state transitions and side effects. It features a Command Query Responsibility Segregation architecture to separate read and write models, alongside event-driven coordination to maintain consistency across autonomous business boundaries
This project is a .NET Clean Architecture template designed to separate domain logic from infrastructure and web frameworks. It provides a project structure for C# applications and a React Redux frontend, creating a testable backend focused on maintainability. The implementation centers on Domain Driven Design, modeling core business domains using entities and value objects to manage complex requirements. It utilizes a decoupled architecture to ensure that business logic remains independent of external frameworks and database technologies. The project covers full stack application bootstrapp
This project is a collection of reference implementations and practical guides for building enterprise Java applications using the Spring Boot framework. It serves as a backend project gallery and implementation guide, providing a set of architectures for common server patterns. The repository distinguishes itself through a focus on distributed system design, offering examples for global unique identifier generation, distributed caching, and full-text search. It also includes templates and examples for creating custom Spring Boot starters to encapsulate shared dependencies and configurations
This project is a reference implementation and architectural sample of Domain-Driven Design. It serves as a codebase demonstrating how to align software design with a specific business domain to manage complex business logic. The implementation functions as a reporting system that receives and processes data via JSON payloads. It utilizes a structured domain model to define and automate business workflows and handle state changes. The architecture partitions the system into distinct application and domain layers, utilizing aggregate roots for consistency and the repository pattern for data a
This project is a full-stack forum platform built with TypeScript that serves as a reference architecture for implementing domain-driven design and clean architecture patterns. It provides a structured environment for community discussion, enabling users to register, authenticate, and engage in moderated conversations across organized topic categories. The platform distinguishes itself by strictly separating core business logic from infrastructure concerns. By utilizing a layered hexagonal architecture and the repository pattern, the codebase isolates business rules from external frameworks a
This project is a TypeScript-based architectural framework designed to implement domain-driven design and hexagonal architecture in enterprise applications. It provides a structured boilerplate that isolates core business logic from infrastructure concerns, ensuring that domain entities, use cases, and external technology adapters remain decoupled and maintainable. The framework distinguishes itself by enforcing strict architectural boundaries and dependency inversion, preventing unauthorized access to core logic from external layers. It utilizes a command-query responsibility segregation pat
This project provides a structured boilerplate for building Node.js REST APIs, implementing clean architecture principles to isolate business logic from external frameworks and data sources. It serves as a template for organizing complex backend services by enforcing a strict separation of concerns between domain entities, infrastructure, and interface layers. The architecture distinguishes itself through a modular, plugin-based server design built on the Hapi.js framework. It utilizes a dependency injection container to decouple business logic from concrete implementations, ensuring that ser
eShop is a .NET microservices reference application that provides a comprehensive blueprint for a distributed retail system. It implements an e-commerce architecture using decoupled services to manage core operations such as product catalogs, shopping baskets, and order processing. The project demonstrates a cloud-native retail infrastructure that incorporates an asynchronous event bus system to synchronize state across distributed services. It includes a reference implementation for integrating generative AI features by connecting the store to large language models via cloud providers. The
This project provides a comprehensive architectural framework and set of standardized patterns for building, securing, and scaling production-ready Node.js applications. It serves as a foundational guide for establishing consistent development workflows, operational observability, and reliable service integration across distributed software systems. The framework distinguishes itself by emphasizing a schema-first approach to API development, ensuring that interface definitions drive the creation of server stubs, client libraries, and type definitions. It promotes a cloud-native posture by int
Prefect is a workflow orchestration platform designed to define, schedule, and monitor complex data pipelines as Python code. It functions as a container-native engine that wraps individual tasks in isolated environments, ensuring consistent dependencies and resource allocation across diverse infrastructure. By utilizing a state-machine-based orchestration model, the system tracks execution progress through discrete transitions and persistent event logs to maintain reliable and observable task processing. The platform distinguishes itself through a decoupled worker-API architecture, which sep
Parse Server is a backend-as-a-service solution and Node.js framework that provides a ready-to-use REST and GraphQL API for mobile and web applications. It functions as a core backend infrastructure for managing database schemas, user authentication, and API routing. The system distinguishes itself with a real-time data engine that pushes database updates to clients via WebSockets and a GraphQL server that automatically generates schemas based on application data models. It also features an adapter-based storage layer that abstracts interactions with various cloud and local backends. The pla
Cube is a semantic data layer that provides a unified framework for defining business metrics, dimensions, and relationships across diverse data sources. By acting as a headless business intelligence engine, it transforms raw data into a governed model that can be queried via SQL, REST, and GraphQL interfaces. This architecture ensures consistent data definitions and logic across all downstream analytical applications and reporting tools. The platform distinguishes itself through its integrated conversational AI capabilities, which allow users to explore data using natural language. It orches
This project is an application framework and boilerplate for enterprise web applications based on ASP.NET Core. It provides a foundation for building large-scale business applications by implementing a domain-driven design framework that organizes application logic into decoupled layers and modules. The framework distinguishes itself through built-in support for multi-tenant software-as-a-service architectures, providing primitives for data, configuration, and interface isolation for multiple customers within a single instance. It also includes an integrated identity management system featuri
Util is a comprehensive development framework for .NET designed to implement layered architectures and domain driven design. It provides a toolkit of base classes and tools for building full stack applications, specifically focusing on the creation of backend admin frameworks and management interfaces. The project distinguishes itself through a boilerplate generator that produces the necessary types and classes to standardize repetitive architectural patterns. It also includes a micro-frontend orchestrator that enables the splitting of large frontend modules into independent projects for sepa
nopCommerce is an open-source ASP.NET Core eCommerce platform and shopping cart designed to manage digital product catalogs, orders, and customer transactions. It provides a complete commerce environment consisting of a customer storefront and a backend administration portal. The system functions as a multi-tenant storefront engine capable of distributing workloads across multiple servers and cloud-native hosting environments. Its architecture is based on a plugin-based framework, allowing for the addition of custom plugins and themes to implement specialized business capabilities and visual
This project is an object persistence library and data mapper abstraction layer. It provides a set of shared interfaces and base classes designed to decouple domain logic from specific object mapper implementations, separating the business domain layer from the underlying data access implementation. The library includes a database schema management and migration tool for defining, versioning, and deploying incremental updates to database structures across different environments. It also functions as a document database mapper, translating object states into structured document formats for sto
ABP is an opinionated architectural framework for building enterprise software solutions using .NET and ASP.NET Core. It serves as a structural toolkit for implementing domain-driven design and microservices patterns, providing a modular enterprise architecture where functionality is organized into independent, pluggable modules. The platform is specifically designed to support multi-tenant SaaS architectures, isolating data and configurations for multiple independent customers within a single application instance. It provides enterprise boilerplate infrastructure and pre-configured templates
This project is a repository pattern library for Laravel applications designed to decouple business logic from database queries and storage implementation. It provides a standardized data access layer to isolate application logic from the underlying storage layer. The library includes a query filter system that translates HTTP request parameters into dynamic database filters, search criteria, and sorting logic. It features an API presenter layer to separate internal data structures from client responses and a cache manager that automatically refreshes stored database results when records are
This project provides a structured boilerplate for building Go web applications based on clean architecture principles. It serves as a template for organizing codebases to ensure that core business logic remains isolated from external frameworks, database layers, and delivery mechanisms. The implementation prioritizes domain-driven design by centering the application around pure business entities that contain no references to infrastructure concerns. It utilizes layered dependency inversion and interface-based port adaptation to decouple the internal logic from external dependencies, allowing
MediatR is a .NET library for implementing the mediator pattern, serving as an in-process message broker that decouples senders and receivers by routing messages through a central dispatcher. It enables the transmission of requests and notifications between different components within a single application process. The framework provides a pipeline behavior system that allows for the interception and processing of messages through a sequence of custom behaviors. This architecture is used to implement cross-cutting concerns, such as logging or validation, across multiple handlers. The library
MediatR is a .NET mediator pattern library that serves as an in-process message broker. It decouples message senders from handlers by using a central mediator to route requests, commands, and events. The system functions as a request-response dispatcher that routes single requests to dedicated handlers and an event publisher that broadcasts notifications to multiple decoupled handlers for simultaneous processing. It also provides pipeline behavior middleware to execute shared pre- and post-processing logic across incoming messages. The library handles in-process message dispatching and decou
Domain-Driven-Design-Example is a C# sample project and reference pattern that demonstrates how to structure business logic and domain models using domain-driven design principles. It implements enterprise application architecture patterns by isolating core business rules and domain entities from technical infrastructure concerns through bounded contexts. The codebase implements core domain concepts using immutable value objects defined entirely by their attributes, alongside entities and application services. It coordinates external requests, transaction boundaries, and domain model interact
This project is a reference implementation of domain-driven design patterns and a sample of command query responsibility segregation. It provides a collection of event-driven microservices that demonstrate the practical application of architectural principles for structuring complex software systems. The implementation separates read and write models through an event journal and organizes services into bounded contexts to maintain clear functional boundaries. It coordinates business logic by dispatching and consuming domain events to synchronize different modules. The project covers a range
NorthwindTraders is an ASP.NET Core sample web application that demonstrates the implementation of business logic and request handling. It is structured as a layered architecture web app, decoupling core application rules from the user interface and data access layers. The project utilizes Entity Framework Core for its database implementation, employing a code-first relational database approach. This allows the database schema to be generated and evolved automatically from C# entity models via an object-relational mapper. The application manages relational data and serves web requests throug
Power-Fx is a declarative logic framework and low-code formula language based on Excel formulas. It functions as an expression parser and evaluator that transforms formula strings into an abstract syntax tree to execute logical operations and resolve values. The project provides a standardized integration layer to connect formula-based logic to external data sources for querying and pushing records. This allows for the definition of business rules and calculations that can be shared as consistent logic across different applications and platforms.
This project is an ASP.NET Core solution template and boilerplate that implements a clean architecture pattern for building enterprise applications and web API backends. It provides a standardized project scaffold designed to separate business logic from infrastructure and user interfaces to ensure high testability and low coupling. The project features a database agnostic structure that allows for switching persistence providers without altering core business logic. It includes a command line tool for enterprise application bootstrapping, enabling the automated generation of project structur