SeroGlint.DotNet
1.1.0
dotnet add package SeroGlint.DotNet --version 1.1.0
NuGet\Install-Package SeroGlint.DotNet -Version 1.1.0
<PackageReference Include="SeroGlint.DotNet" Version="1.1.0" />
<PackageVersion Include="SeroGlint.DotNet" Version="1.1.0" />
<PackageReference Include="SeroGlint.DotNet" />
paket add SeroGlint.DotNet --version 1.1.0
#r "nuget: SeroGlint.DotNet, 1.1.0"
#:package SeroGlint.DotNet@1.1.0
#addin nuget:?package=SeroGlint.DotNet&version=1.1.0
#tool nuget:?package=SeroGlint.DotNet&version=1.1.0
SeroGlint.DotNet
A modular collection of utilities, interfaces, and service builders designed to simplify .NET development for cross-cutting concerns like logging, configuration, encryption, and messaging.
📚 Projects and Documentation
Each major component is documented with its own markdown file under the Documentation
directory.
Component | Description | Documentation File |
---|---|---|
ConfigurationLoader |
Loads configuration files with support for mocks and tests. | ConfigurationLoader.md |
ILoggerBuilder |
Provides extensible logging setup with Serilog/NLog. | ILoggerBuilder.md |
PasswordUtility |
Secure password hashing and validation helper. | PasswordUtility.md |
AesEncryptionService |
AES-256 encryption wrapper with logging and IV derivation. | AesEncryptionService.md |
PipeEnvelope<T> |
Represents a typed, serializable message envelope. | PipeEnvelope.md |
NamedPipeClient |
Sends encrypted or plain messages over named pipes. | NamedPipeClient.md |
NamedPipeServerCore |
Listens for connections and handles message routing. | NamedPipeServerCore.md |
PipeMessageReceivedEventArgs |
Event args used when a message is received on the server. | PipeMessageReceivedEventArgs.md |
PipeResponseRequestedEventArgs |
Event args used when a response is triggered by the server. | PipeResponseRequestedEventArgs.md |
INamedPipeClient |
Interface abstraction for the named pipe client. | INamedPipeClient.md |
INamedPipeServerCore |
Interface abstraction for the server core. | INamedPipeServerCore.md |
INamedPipeConfigurator |
Interface describing the pipe config (e.g., server, pipe name, encryption). | NamedPipeConfigurator.md |
📦 NuGet Dependencies
These packages are required when using SeroGlint.DotNet
:
Package | Version | Purpose |
---|---|---|
Microsoft.Extensions.Logging.Abstractions |
9.0.4 | Standard logging interfaces for dependency injection and mockability |
NLog |
5.4.0 | Core NLog logging engine |
NLog.Extensions.Hosting |
5.4.0 | Integration with IHostBuilder |
NLog.Extensions.Logging |
5.4.0 | Connects NLog to ILogger |
NLog.Web.AspNetCore |
5.4.0 | ASP.NET Core integration for NLog |
Serilog |
4.2.0 | Core Serilog logging engine |
Serilog.AspNetCore |
9.0.0 | ASP.NET Core-specific extensions |
Serilog.Extensions.Hosting |
9.0.0 | Hosting integration |
Serilog.Sinks.Console |
6.0.0 | Console logging for Serilog |
Serilog.Sinks.Debug |
3.0.0 | Debug output sink |
Serilog.Sinks.File |
7.0.0 | File logging output |
System.Security.Cryptography.Algorithms |
4.3.1 | Enables AES encryption in secure communication |
System.Text.Json |
9.0.3 | JSON (de)serialization used across pipe messaging and utilities |
🧪 Testing
Unit tests are written using xUnit
and NSubstitute
, following the Arrange-Act-Assert pattern. Most components are fully mockable and testable due to interface abstractions.
Run all tests:
dotnet test
🔐 Security & Reliability
- Internal helpers (like
AesEncryptionService
) isolate security logic from consumer code. - Named pipe handlers include cancellation support and structured error logging.
- All I/O logic is abstracted for testability.
🤝 Contributions
Contributions are welcome! Please follow the guidelines and submit PRs with clear descriptions and passing tests.
© Iterix · Built for performance, extensibility, and clarity
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.Extensions.Logging.Abstractions (>= 9.0.4)
- NLog (>= 5.4.0)
- NLog.Extensions.Hosting (>= 5.4.0)
- NLog.Extensions.Logging (>= 5.4.0)
- NLog.Web.AspNetCore (>= 5.4.0)
- Serilog (>= 4.2.0)
- Serilog.AspNetCore (>= 9.0.0)
- Serilog.Extensions.Hosting (>= 9.0.0)
- Serilog.Sinks.Console (>= 6.0.0)
- Serilog.Sinks.Debug (>= 3.0.0)
- Serilog.Sinks.File (>= 7.0.0)
- System.Security.Cryptography.Algorithms (>= 4.3.1)
- System.Text.Json (>= 9.0.3)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.