Afrowave.Toolbox.Essentials 0.2.0

dotnet add package Afrowave.Toolbox.Essentials --version 0.2.0
                    
NuGet\Install-Package Afrowave.Toolbox.Essentials -Version 0.2.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Afrowave.Toolbox.Essentials" Version="0.2.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Afrowave.Toolbox.Essentials" Version="0.2.0" />
                    
Directory.Packages.props
<PackageReference Include="Afrowave.Toolbox.Essentials" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Afrowave.Toolbox.Essentials --version 0.2.0
                    
#r "nuget: Afrowave.Toolbox.Essentials, 0.2.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Afrowave.Toolbox.Essentials@0.2.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Afrowave.Toolbox.Essentials&version=0.2.0
                    
Install as a Cake Addin
#tool nuget:?package=Afrowave.Toolbox.Essentials&version=0.2.0
                    
Install as a Cake Tool

Afrowave.Toolbox

Afrowave.Toolbox is a .NET 10 package family that provides small, reusable building blocks for Afrowave applications and related tools.

This repository currently contains the Afrowave.Toolbox.Essentials package, which provides foundational contracts, result and response models, issue handling, metadata helpers, diagnostics, value objects, enums, guards, and extension methods.

Current package

Afrowave.Toolbox.Essentials

Afrowave.Toolbox.Essentials is the base package for common application infrastructure.

It includes:

  • result and response models
  • issue and diagnostic models
  • metadata containers
  • common interfaces
  • enum helper extensions
  • value objects such as culture codes and provider names
  • guard helpers
  • null-safe and consistency-focused extension methods

Design principles

The Essentials package is intentionally small and dependency-light.

Core rules used across the package:

  • public helper methods validate null root objects and invalid arguments
  • nullable model properties are handled defensively where appropriate
  • MetadataBag is mutable, so copying APIs create metadata copies instead of sharing mutable references
  • issue lists are treated as read-only snapshots or read-only references
  • empty factories return safe empty instances
  • behavior is covered by unit tests

Documentation

Documentation is available in the Docs folder:

Target framework

The current Toolbox generation targets:

net10.0

Older compatibility targets are intentionally not part of this generation. The goal is to keep the package clean, modern, and free from historical compatibility constraints.

Packaging

The repository uses central package configuration in Directory.Build.props.

Project files should usually contain only package-specific values such as:

  • PackageId
  • Description
  • PackageTags
  • Version
  • optionally AssemblyName
  • optionally RootNamespace

To create a release package:

dotnet pack Essentials/Essentials.csproj -c Release

Testing

Run all tests with:

dotnet test

Before release, prefer a clean build:

dotnet clean
dotnet build
dotnet test

Status

This package is under active development. Public behavior is being documented and stabilized step by step.

Product Compatible and additional computed target framework versions.
.NET 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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net10.0

    • No dependencies.

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
0.2.0 182 6/4/2026

Documentation-ready release for the first Afrowave.Toolbox.Essentials NuGet publication. No functional API changes.