OnixLabs.DependencyInjection
13.0.0
dotnet add package OnixLabs.DependencyInjection --version 13.0.0
NuGet\Install-Package OnixLabs.DependencyInjection -Version 13.0.0
<PackageReference Include="OnixLabs.DependencyInjection" Version="13.0.0" />
<PackageVersion Include="OnixLabs.DependencyInjection" Version="13.0.0" />
<PackageReference Include="OnixLabs.DependencyInjection" />
paket add OnixLabs.DependencyInjection --version 13.0.0
#r "nuget: OnixLabs.DependencyInjection, 13.0.0"
#:package OnixLabs.DependencyInjection@13.0.0
#addin nuget:?package=OnixLabs.DependencyInjection&version=13.0.0
#tool nuget:?package=OnixLabs.DependencyInjection&version=13.0.0
ONIXLabs .NET Library
The ONIXLabs .NET Library is a suite of general-purpose, production-ready libraries designed to support modern application development with a strong emphasis on correctness, composability, and value semantics. They are designed to integrate cleanly into both small utilities and large-scale systems, without imposing architectural constraints or framework lock-in.
At a high level, ONIXLabs provides:
- Foundational primitives and patterns missing or underrepresented in the BCL
- Functional and value-oriented abstractions for safer code
- High-precision numeric and generic math utilities
- Security and cryptography APIs with strong typing and value semantics
- Infrastructure helpers that reduce boilerplate while preserving clarity
Current .NET Support includes .NET 8.0, 9.0 and 10.0, and all packages are published to Nuget.
Package Overview
- OnixLabs.Core – Foundational primitives, patterns, and extensions
- OnixLabs.DependencyInjection – Configuration-driven DI registration
- OnixLabs.Numerics – Arbitrary-precision numbers and generic math
- OnixLabs.Security – Non-cryptographic security utilities
- OnixLabs.Security.Cryptography – Cryptographic primitives and structures
OnixLabs.Core
Foundational primitives, patterns, and extensions that address common gaps in the .NET Base Class Library. This package provides low-level building blocks used throughout the ONIXLabs ecosystem, but is also useful as a standalone utility library in any .NET application.
- Strongly typed enumeration pattern (
Enumeration<T>) - Functional patterns (
Optional<T>,Result,Result<T>) - Preconditions and guard clause utilities
- Specification pattern with LINQ-compatible expressions (
Specification<T>) - Value semantics interfaces (
IValueEquatable<T>,IValueComparable<T>) - Binary conversion abstractions (
IBinaryConvertible, span- and memory-based variants) - Collection generators with LINQ-style query support
- Extension methods for arrays, objects, strings, comparables, random, and more
- Extensions for
IEnumerable,IEnumerable<T>, andIQueryable<T> - Reflection helpers for
Type - Strongly typed
Base16,Base32,Base58, andBase64text types - Extensions for
StringBuilderandEncoding
OnixLabs.DependencyInjection
Lightweight extensions for Microsoft’s dependency injection abstractions, focused on reducing boilerplate and improving configurability of service registration.
IServiceCollectionextensions- Configuration-driven service lifetime selection
- Cleaner, more consistent registration APIs
OnixLabs.Numerics
High-precision numeric types and generic math utilities for scenarios where built-in numeric types are insufficient. This package emphasizes correctness, precision, and introspection of numeric values.
- Arbitrary-precision
BigDecimalbased on generic math (IFloatingPoint<T>) NumberInfofor dissecting rational numbers into constituent parts- Generic numeric abstractions (
IBaseNumber<T>,INumber<T>) - Extension methods for
Decimal,BigDecimal,BigInteger, and other numeric types
OnixLabs.Security
Non-cryptographic security utilities focused on safe generation and handling of security-related values.
SecurityTokengeneration- Support for pseudo-random and cryptographically secure RNGs
- Configurable token alphabets (upper, lower, numeric, special characters)
OnixLabs.Security.Cryptography
Strongly typed cryptographic primitives and structures with value semantics, designed to make cryptographic operations safer and more explicit.
- Public and private key abstractions (
PublicKey,PrivateKey) - ECDH, ECDSA, and RSA key implementations
- Digital signature types (
DigitalSignature,DigitalSignatureAndPublicKey) - Cryptographic hash value types (
Hash,NamedHash) - Extensions for
HashAlgorithm - Fully managed FIPS-202 SHA-3 implementation (SHA3-224/256/384/512, SHAKE128/256)
- Merkle tree implementations (
MerkleTree,MerkleTree<T>) - Cryptographic salt value type (
Salt) - Encrypted-in-memory secret handling (
Secret) - Common cryptographic primitive abstraction (
ICryptoPrimitive)
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. 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 is compatible. 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 is compatible. 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. |
-
net10.0
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 9.0.0)
- OnixLabs.Core (>= 13.0.0)
-
net8.0
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 9.0.0)
- OnixLabs.Core (>= 13.0.0)
-
net9.0
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 9.0.0)
- OnixLabs.Core (>= 13.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.