Skip to content

πŸ“š ConnectSoft Libraries Catalog

Current implementation

This page describes what exists in source today, with its limitations. Existence of code is not evidence of publication, deployment or tested guarantees.

Generated from the architecture model (2026-10-09)

The inventory-backed list of all 113 ConnectSoft libraries, API clients and UI kits is the generated libraries catalog, grouped into fifteen capability-area pages under Software Factory β†’ Template & Library β†’ Libraries by capability area (purpose, package, layer, status, last commit, dependencies, Factory services that use it). This page keeps the narrative for the 25 libraries it describes; where the two disagree, the model (model/libraries.yaml) wins.

ConnectSoft provides a curated set of reusable libraries published as NuGet packages. Each library is designed to encapsulate a specific cross-cutting concern or foundational capability for modern .NET applications.

Shared packages multi-target .NET 8, .NET 9 and .NET 10 (hosts and templates target .NET 10; see ADR-0001) and align with best practices in microservice, DDD, and configuration-driven environments.


βœ… Available Libraries

1. ConnectSoft.Extensions

  • Purpose: Utility extensions for native .NET types (string, int, DateTime, etc.) and shared base types.
  • Key Features:
    • string.ToSlug(), int.IsEven(), DateTime.IsWeekend()
    • IEnumerable<T>.IsNullOrEmpty()
    • Base exception for domain logic: DomainModelException
  • Use Cases: Utility libraries, shared code, microservices
  • NuGet: View Package
  • Status: 🟒 Stable

2. ConnectSoft.Extensions.DataAnnotations

  • Purpose: Adds missing validation functionality to .NET's DataAnnotations system.
  • Key Features:
    • NotDefaultAttribute β€” works on any struct (Guid, DateTime, int, etc.)
    • Null-safe: integrates cleanly with [Required] if needed
    • Supports IOptions<T>, domain models, and DTOs
  • Use Cases: Domain validation, configuration binding, API model validation
  • NuGet: View Package
  • Status: 🟒 Stable

3. ConnectSoft.Extensions.Options

  • Purpose: Provides a standardized extension method for registering and validating options with dependency injection. Encapsulates the common pattern used across all ConnectSoft libraries and templates for options registration.
  • Key Features:
    • Configuration binding with strict validation (ErrorOnUnknownConfiguration = true)
    • DataAnnotations validation (automatic validation of [Required], [Range], etc.)
    • Custom validator support via IValidateOptions<TOptions>
    • Fail-fast validation on startup
    • Singleton validator registration with auto-activation
  • Use Cases: Options registration in ConnectSoft libraries, configuration validation in templates, standardized options pattern across projects, eliminating code duplication
  • Framework: .NET 10, 9, and 10
  • NuGet: View Package
  • Source: Repository
  • Status: 🟒 Stable

4. ConnectSoft.Extensions.Localization

  • Purpose: Provides reusable localization functionality for .NET applications. Enables configuration and use of .NET's built-in localization infrastructure with strongly-typed options, validation, and a clean API.
  • Key Features:
    • Strongly-typed IOptions<T>-based configuration
    • Options validation with DataAnnotations
    • Automatic ResourceManagerStringLocalizerFactory registration
    • Configurable supported cultures and UI cultures
    • Parent culture fallback support
    • Response header culture application
    • Uses ConnectSoft.Extensions.Options for standardized options registration
  • Use Cases: Multi-language web applications, internationalization (i18n) support, localized resource management, culture-aware applications, multi-tenant SaaS applications with localization
  • Framework: .NET 10, 9, and 10
  • NuGet: View Package
  • Source: Repository
  • Status: 🟒 Stable

5. ConnectSoft.Extensions.DatabaseModel

  • Purpose: Provides an abstraction layer for managing and provisioning database instances.
  • Key Features:
    • IDatabaseHelper interface for cross-database operations: creation, schema setup, SQL execution
    • Core interface, no database-specific logic
  • Use Cases: Infrastructure initialization, CI/CD provisioning, tenant setup
  • NuGet: View Package
  • Status: 🟒 Stable

πŸ”Œ Implementors


6. ConnectSoft.Extensions.Globalization

  • Purpose: Provides utilities and calendar extensions for working with the Jewish calendar and Hebrew characters.
  • Key Features:
    • Gregorian ⇄ Jewish date conversions
    • Jewish holiday recognition
    • Leap year and day-of-week calculations
    • Hebrew character classification (letters, finals, etc.)
  • Use Cases: Localization engines, religious calendar support, Hebrew text analysis
  • NuGet: View Package
  • Status: 🟒 Stable

7. ConnectSoft.Extensions.MessagingModel

A messaging-agnostic abstraction that defines base interfaces for event-driven communication patterns. Purpose: Acts as the foundation for messaging libraries, providing core contracts like ICommand, IEvent, and IEventBus. Framework: .NET 10, 9, and 10 NuGet: ConnectSoft.Extensions.MessagingModel Source: Repository Status: 🟒 Stable Implementations:

  • βœ… ConnectSoft.Extensions.MessagingModel.NServiceBus
  • βœ… ConnectSoft.Extensions.MessagingModel.MassTransit

8. ConnectSoft.Extensions.MessagingModel.MassTransit

MassTransit-based implementation of the ConnectSoft messaging model abstraction. Purpose: Bridges IEventBus with MassTransit APIs for command and event messaging. Framework: .NET 10, 9, and 10 NuGet: ConnectSoft.Extensions.MessagingModel.MassTransit Source: Repository


9. ConnectSoft.Extensions.MessagingModel.NServiceBus

NServiceBus-based implementation of the ConnectSoft messaging model abstraction. Purpose: Bridges IEventBus with NServiceBus APIs; includes extra utilities like DI extensions and header propagation. Framework: .NET 10, 9, and 10 NuGet: ConnectSoft.Extensions.MessagingModel.NServiceBus Source: Repository


10. ConnectSoft.Extensions.EntityModel

Comprehensive modeling base for Domain-Driven Design (DDD) in .NET applications.
Purpose: Provides base contracts for entities, value objects, aggregate roots, and rich enumerations. Enables consistent modeling patterns across bounded contexts.
Framework: .NET 10, 9, and 10
NuGet: ConnectSoft.Extensions.EntityModel
Source: Repository


11. ConnectSoft.Extensions.DomainModel

Foundation for implementing Domain Services and Use Case handlers based on Domain-Driven Design (DDD), Clean Architecture, and Hexagonal Architecture principles. Purpose: Supports separation of concerns by defining contracts for IDomainService and IUseCase<TInput, TOutput>; enables maintainable, testable application cores. Framework: .NET 10, 9, and 10 NuGet: ConnectSoft.Extensions.DomainModel Source: Repository


12. ConnectSoft.Extensions.DomainModel.Impl

πŸ› οΈ Under Construction Implementation-ready shell for domain modeling components (IDomainService, IUseCase, etc.) defined in ConnectSoft.Extensions.DomainModel.
Purpose: Serves as the starting point for internal or shared domain service implementations that extend base contracts.
Framework: .NET 10, 9, and 10
NuGet: ConnectSoft.Extensions.DomainModel.Impl
Source: Repository


13. ConnectSoft.Extensions.Transactions

Lightweight abstraction for managing transactional boundaries in a clean and testable manner.
Purpose: Centralizes ITransaction and TransactionScopeTransaction handling in a consistent interface across persistence strategies.
Framework: .NET 10, 9, and 10
NuGet: ConnectSoft.Extensions.Transactions
Source: Repository


14. ConnectSoft.Extensions.PersistenceModel

Data source–agnostic abstraction for persistence patterns such as repository, unit of work, specifications, and queries. Designed for use with DDD and clean architecture approaches.
Purpose: Provides consistent and testable data access APIs over any backing store. Built on top of ConnectSoft.Extensions.EntityModel.
Framework: .NET 10, 9, and 10
NuGet: ConnectSoft.Extensions.PersistenceModel
Source: Repository


15. ConnectSoft.Extensions.PersistenceModel.DependencyInjection

Dependency injection extensions for the ConnectSoft persistence model. Purpose: Provides Microsoft.Extensions.DependencyInjection–based implementations of key infrastructure components:


16. ConnectSoft.Extensions.PersistenceModel.NHibernate

NHibernate-based implementation of the ConnectSoft persistence model abstraction.
Purpose: Enables full repository, unit of work, query, and specification patterns using NHibernate; includes logging, transient tracking, enumeration mapping, and DI support.
Framework: .NET 10, 9, and 10
NuGet: ConnectSoft.Extensions.PersistenceModel.NHibernate
Source: Repository


17. ConnectSoft.Extensions.PersistenceModel.MongoDb

MongoDB-based implementation of the ConnectSoft persistence model abstraction.
Purpose: Provides enterprise-grade data access patterns for MongoDB including repository, unit of work, specification patterns, transaction support, migration framework, and built-in observability with OpenTelemetry tracing.
Framework: .NET 10, 9, and 10
NuGet: ConnectSoft.Extensions.PersistenceModel.MongoDb
Source: Repository
Status: 🟒 Stable


18. ConnectSoft.Extensions.ServiceModel

Communication-agnostic base library for structured service contracts, fault handling, and interoperable message definitions.
Purpose: Defines fault contracts, service/message wrappers, and metadata for use across WCF, REST, gRPC, CoreWCF, Orleans, and Service Fabric.
Framework: .NET 10, 9, and 10
NuGet: ConnectSoft.Extensions.ServiceModel
Source: Repository


19. ConnectSoft.Text.Json

Extension library built on System.Text.Json to enhance enum serialization, formatting, and deserialization behaviors.
Purpose: Supports [EnumMember(Value = "...")], improves compatibility with external APIs, and simplifies JSON configuration.
Framework: .NET 10, 9, and 10
NuGet: ConnectSoft.Text.Json
Source: Repository


20. ConnectSoft.Extensions.Http.OAuth2

Extensible, DI-based library for OAuth 2.0 token acquisition and management in .NET 10, 9, and 10.
Purpose: Supports multiple grant types (client credentials, password, refresh), named clients, token caching, ID token validation, and test automation with WireMock.
Framework: .NET 10, 9, and 10
NuGet: ConnectSoft.Extensions.Http.OAuth2
Source: Repository


21. ConnectSoft.Net.Http

Extension utilities for working with HttpClient in .NET.
Purpose: Adds missing methods like DeleteAsJsonAsync, and includes SubdirectoryHandler for reverse proxy URL rewriting β€” useful in gRPC or IIS-hosted services.
Framework: .NET 10, 9, and 10
NuGet: ConnectSoft.Net.Http
Source: Repository


22. ConnectSoft.Extensions.Compliance

Reusable compliance/redaction library that standardizes data classification and data redaction across ConnectSoft services.
Purpose: Wraps and extends Microsoft.Extensions.Compliance.* with shared taxonomy, custom redactors (Email, Phone, PAN, JWT, IP, GUID, Secret), structured logging integration, and configurable profiles (default/audit/strict).
Framework: .NET 10, 9, and 10
NuGet: ConnectSoft.Extensions.Compliance
Source: Repository
Status: 🟒 Stable


23. ConnectSoft.Extensions.Diagnostics.HealthChecks

Shared, template-agnostic building blocks for .NET health checks used across ConnectSoft services.
Purpose: Provides reusable infrastructure for implementing health checks, including DelegateHealthCheck for lightweight health checks and validated options.
Framework: .NET 10, 9, and 10
NuGet: ConnectSoft.Extensions.Diagnostics.HealthChecks
Source: Repository
Status: 🟒 Stable

πŸ”Œ Implementors


24. ConnectSoft.Extensions.Diagnostics.HealthChecks.SignalR

SignalR-specific health checks for monitoring hub connectivity in .NET applications.
Purpose: Automatically discovers SignalR hub endpoints, creates client connections to verify connectivity, and integrates with ASP.NET Core's health checks system.
Framework: .NET 10, 9, and 10
NuGet: ConnectSoft.Extensions.Diagnostics.HealthChecks.SignalR
Source: Repository
Status: 🟒 Stable


25. ConnectSoft.Extensions.Diagnostics.HealthChecks.Orleans

Orleans-specific health checks for monitoring cluster, silo, grain, and storage health in Orleans-based applications.
Purpose: Provides production-ready health checks for Orleans clusters, including cluster status, silo health, grain activation, storage connectivity, and Azure storage health checks (Table Storage clustering, Blob Storage persistence).
Framework: .NET 10, 9, and 10
NuGet: ConnectSoft.Extensions.Diagnostics.HealthChecks.Orleans
Source: Repository
Status: 🟒 Stable


26. ConnectSoft.Extensions.AspNetCore

ASP.NET Core extensions for common web application scenarios.
Purpose: Provides Server-Timing middleware for performance metrics, AJAX request detection, local request identification, and other ASP.NET Core utilities.
Framework: .NET 6, 8, 9, and 10
NuGet: ConnectSoft.Extensions.AspNetCore
Source: Repository
Status: 🟒 Stable


27. ConnectSoft.Extensions.ServiceModel.Grpc

gRPC-based service communication implementation with code-first approach.
Purpose: Provides gRPC service hosting with code-first approach (no .proto files), exception handling, interceptors, fault contract transformation, JSON marshalling, and Brotli compression support.
Framework: .NET 10, 9, and 10
NuGet: ConnectSoft.Extensions.ServiceModel.Grpc
Source: Repository
Status: 🟒 Stable


28. ConnectSoft.Extensions.ServiceModel.Grpc.Client

gRPC client implementation for consuming gRPC services with code-first approach.
Purpose: Provides gRPC client functionality for consuming services built with ConnectSoft.Extensions.ServiceModel.Grpc, supporting code-first approach without .proto files.
Framework: .NET 10, 9, and 10
NuGet: ConnectSoft.Extensions.ServiceModel.Grpc.Client
Source: Repository
Status: 🟒 Stable


Stay tuned for more reusable and production-ready components.
For templates that integrate these libraries, see ConnectSoft Templates.