Sumapap.Mvvm.Maui.SourceGenerator
2.0.0
dotnet add package Sumapap.Mvvm.Maui.SourceGenerator --version 2.0.0
NuGet\Install-Package Sumapap.Mvvm.Maui.SourceGenerator -Version 2.0.0
<PackageReference Include="Sumapap.Mvvm.Maui.SourceGenerator" Version="2.0.0" />
<PackageVersion Include="Sumapap.Mvvm.Maui.SourceGenerator" Version="2.0.0" />
<PackageReference Include="Sumapap.Mvvm.Maui.SourceGenerator" />
paket add Sumapap.Mvvm.Maui.SourceGenerator --version 2.0.0
#r "nuget: Sumapap.Mvvm.Maui.SourceGenerator, 2.0.0"
#:package Sumapap.Mvvm.Maui.SourceGenerator@2.0.0
#addin nuget:?package=Sumapap.Mvvm.Maui.SourceGenerator&version=2.0.0
#tool nuget:?package=Sumapap.Mvvm.Maui.SourceGenerator&version=2.0.0
๐ก Sumapap
Sumapap is an evolving ecosystem of .NET libraries born from real-world development challenges. It reflects my continuous journey as a software engineer โ moving away from "perfect" abstractions toward practical, production-ready systems.
Sumapap supersedes SingleScope as my primary project, incorporating years of real-world lessons into an evolving ecosystem of .NET libraries.
๐ค What is included in this repository?
This repository contains modular .NET libraries designed for .NET 10. These tools focus on decoupling domain logic from infrastructure while maintaining high performance and developer productivity.
Domain-Driven Design (DDD)
| Package | Description | Latest Version | Download |
|---|---|---|---|
| Sumapap.Ddd.Abstractions | Core abstractions for DDD patterns (interfaces only, no implementations). | ||
| Sumapap.Ddd | Lightweight DDD implementations (Aggregates, Value Objects, Domain Events). | ||
| Sumapap.Ddd.Mediator | Adapts domain events to Mediator pipelines. |
Persistence & Data Access
| Package | Description | Latest Version | Download |
|---|---|---|---|
| Sumapap.Persistence.Abstractions | Core abstractions for repositories and persistence patterns. | ||
| Sumapap.Persistence | Repository patterns, Specifications, and Unit of Work implementations. | ||
| Sumapap.Persistence.EfCore | Entity Framework Core implementation of persistence patterns. | ||
| Sumapap.Persistence.Caching | Decorator-based caching layer for repositories with tag-based invalidation. | ||
| Sumapap.Persistence.Caching.FusionCache | FusionCache-based implementation of persistence caching. |
Queries & Filtering
| Package | Description | Latest Version | Download |
|---|---|---|---|
| Sumapap.Queries.Abstractions | Core query abstractions for filtering, sorting, and pagination. | ||
| Sumapap.Queries | Query execution infrastructure with support for IQueryable and IEnumerable. |
Infrastructure & Utilities
| Package | Description | Latest Version | Download |
|---|---|---|---|
| Sumapap.Common | Shared utilities and extensions used across Sumapap libraries. | ||
| Sumapap.Caching | Cache key provider abstractions with consistent key generation. | ||
| Sumapap.DependencyInjection | Service registration helpers and DI utilities. | ||
| Sumapap.Reporting | Centralized error and exception reporting with sink-based architecture. | ||
| Sumapap.Reporting.Maui | MAUI report sinks for displaying errors in mobile/desktop apps. |
UI & Navigation
| Package | Description | Latest Version | Download |
|---|---|---|---|
| Sumapap.Navigations | Navigation abstractions for MVVM applications. |
โญ Naming Convention
We follow a strict capability-technology hierarchy:
Sumapap.<Capability>.<Technology>
๐ฉ Layer Diagram
The image is a layered architecture diagram showing how different libraries and modules are organized and layered to support a scalable system.
The Dependency Rule: Dependencies always flow downward. Foundational abstractions (bottom) are technology-agnostic, while implementation layers (top) handle specific frameworks.
๐ก๏ธ Disclaimer
This project is an honest reflection of my professional journey. While it is used in production environments, I encourage users to review the source code against their specific performance and security requirements. Sumapap is not a "perfect" framework โ it is a set of tools that continues to evolve as I learn and grow.
๐ Getting Started
Please read the documentation for each respective library in the /docs folder.
๐ช Contributions
Contributions are welcome! If you encounter a bug, have a suggestion, or want to contribute code, please follow these steps:
- Check the GitHub Issues to see if your issue or idea has already been reported.
- If not, open a new issue to describe the bug or feature request.
- For code contributions:
- Fork the Project repository (
https://github.com/muhammadirwanto-dev/sumapap). - Create your Feature Branch (
git checkout -b feature/YourAmazingFeature). - Commit your Changes. Adhere to conventional commit messages if possible.
- Push to the Branch and open a Pull Request against
main.
- Fork the Project repository (
- Please try to follow the existing coding style and include unit tests for new or modified functionality.
โญ License
Distributed under the MIT License. See the LICENSE file in the repository for more information.
๐ฉ Contact
GitHub @muhammadirwanto-dev
Project Url https://github.com/muhammadirwanto-dev/sumapap/tree/main/source/Sumapap
โ Support
If you like this project and want to support it, you can buy me a coffee๏ธ. Your coffee will keep me awake while developing this project โ.
<p align="center"> <a href="https://buymeacoffee.com/muhirwanto.dev"> <img src="https://img.buymeacoffee.com/button-api/?text=Buy%20me%20a%20coffee&emoji=&slug=muhirwanto.dev&button_colour=FFDD00&font_colour=000000&font_family=Comic&outline_colour=000000&coffee_colour=ffffff" alt="Buy Me A Coffee"> </a> </p>
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Microsoft.CodeAnalysis.CSharp (>= 5.3.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 2.0.0 | 84 | 9/14/2026 |