Open Source
Savvy I/O for .NET is available on GitHub and is licensed under The MIT License (MIT) and gives freedom for commercial projects; free of charge.
An open-source project (MIT license) that provides a SOLID and clean .NET class library for writing DDD, CQRS and Event Sourcing applications.
It is, by heart, free, flexible and built to extend and boost your agile codebelt.
Savvy I/O is a composable .NET framework for DDD, CQRS and Event Sourcing, built from small, focused building blocks rather than a monolithic dependency. Adopt only the capabilities you need, keep infrastructure at the edges, and your domain at the center.
Savvy I/O for .NET is available on GitHub and is licensed under The MIT License (MIT) and gives freedom for commercial projects; free of charge.
All Savvy I/O assemblies are publicly available as NuGet packages on NuGet.org.
Savvy I/O is both documented on a per-assembly level and with DocFX. This provides full IntelliSense and reference lookup while you make great software.
Savvy I/O separates domain and application abstractions from persistence, messaging, serialization and other infrastructure concerns. Dependencies point toward stable abstractions, allowing implementations to evolve without reshaping the core domain.
34 focused packages provide fine-grained control over your dependency surface. Prefer convenience? Savvyio.App brings the broader Savvy I /O experience together in a single package without changing the underlying architecture.
Worried about debugging? Don't be - all Savvy I/O packages published to NuGet is 100% Source Link enabled.
Extensions for Microsoft Entity Framework Core support both the Repository pattern (for Commands) and the Data Access Object pattern (for Queries).
Extensions for Dapper by Stack Overflow support the Data Access Object pattern that is a great fit for Queries.
Extensions for AWS SQS and AWS SNS support distributed architecture with both Command Queue and Event Bus.
Extensions for RabbitMQ Worker Queue and Publish/Subscribe support distributed architecture with both Command Queue and Event Bus.
Extensions for NATS Work-Queue Stream and NATS Core Publish-Subscribe support distributed architecture with both Command Queue and Event Bus.
Extensions for Azure Storage Queue and Azure Event Grid support distributed architecture with both Command Queue and Event Bus.
Extensions convert both Commands and Integration Events into lightweight messages, with opinionated support for CloudEvents when publishing Integration Events.
IMarshaller abstracts (de)serialization, giving you flexibility to support endless formats without binding your code to a single technology.
Includes built-in marshaller implementations for System.Text.Json and Newtonsoft.Json for JSON handling without tight coupling.