Tooark 4.3.0

There is a newer version of this package available.
See the version list below for details.
dotnet add package Tooark --version 4.3.0
                    
NuGet\Install-Package Tooark -Version 4.3.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="Tooark" Version="4.3.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Tooark" Version="4.3.0" />
                    
Directory.Packages.props
<PackageReference Include="Tooark" />
                    
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 Tooark --version 4.3.0
                    
#r "nuget: Tooark, 4.3.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 Tooark@4.3.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=Tooark&version=4.3.0
                    
Install as a Cake Addin
#tool nuget:?package=Tooark&version=4.3.0
                    
Install as a Cake Tool

Tooark

Library with every Tooark resource and feature aimed at .NET projects.

🌍 Languages: 🇺🇸 English (this file) · 🇧🇷 Português

Installation

dotnet add package Tooark

The aggregator brings every Tooark package at once. Install the packages individually when you only want some of them — the surface is the same.

Configuration

The translations ship with the assembly, so there is nothing to configure for them to work.

Add the following line to your Program.cs:

// Importing the required namespaces
using Tooark.Injections;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;

var services = new ServiceCollection();

IConfiguration configuration = new ConfigurationBuilder()
  .Build();

// In your service configuration
services.AddTooarkService(configuration);

That single call registers Tooark.Dtos, Tooark.Extensions, Tooark.ValueObjects and Tooark.Mediator, and adds Tooark.Securities and Tooark.Observability when the corresponding configuration sections exist.

Where the mediator handlers are looked up

Without an argument, in the assembly that called AddTooarkService. In a single-project application that is what you want, and there is nothing to do.

In a layered application the handlers usually live in another project. Pass the assemblies:

services.AddTooarkService(configuration, typeof(MyHandler).Assembly);

Calling AddTooarkMediator afterwards also works, to add assemblies or configure the options — the handler registration does not duplicate:

using Tooark.Mediator.Injections;

services.AddTooarkService(configuration);
services.AddTooarkMediator(typeof(MyHandler).Assembly);

Careful when calling AddTooarkService from inside a library of yours. The assembly looked up is the caller's, so it would be your library's, not the application's. Pass the right assembly along.

Unit of work

Stays out of AddTooarkService, because it depends on the type of your Entity Framework context:

using Tooark.Mediator.EntityFrameworkCore.Injections;

services.AddTooarkMediatorUnitOfWork<MyDbContext>();

OpenID Connect SSO

Also stays out of AddTooarkService: the same provider can back an interactive login (OpenIdConnect handler) or an API (JwtBearer handler), and that choice is yours. Register it explicitly:

using Tooark.Securities.OpenId.Injections;

services.AddTooarkEntraSso(configuration);   // reads OpenId:Entra
services.AddTooarkGoogleSso(configuration);  // reads OpenId:Google

Available features

Tooark.Attributes

Description: This package provides custom attributes for use in .NET projects.

Tooark.AspNetCore

Description: This package gathers the features that depend on ASP.NET Core, such as reading ModelState errors.

Tooark.Dtos

Description: This package contains data transfer objects (DTOs) that ease the communication between application layers.

Tooark.Entities

Description: This package defines the domain entities used by the application.

Tooark.Enums

Description: This package contains the enum definitions used across the application.

Tooark.Exceptions

Description: This package provides custom exceptions for use in .NET projects.

Tooark.Extensions

Description: This package provides extension methods for common .NET types and classes.

Tooark.Notifications

Description: This package offers features to manage notifications and messages in the application.

Tooark.Mediator.Abstractions

Description: This package provides the base contracts of the Mediator pattern for use in .NET projects.

Tooark.Mediator

Description: This package offers a concrete implementation of the Mediator pattern, easing the communication between application components.

Tooark.Mediator.EntityFrameworkCore

Description: This package moves Entity Framework Core persistence into the Mediator pipeline, keeping handlers free of SaveChanges.

Tooark.Observability

Description: This package provides tools for monitoring and observability of the application.

Tooark.Securities

Description: This package offers security features, including cryptography and authentication.

Tooark.Securities.OpenId

Description: This package configures the native ASP.NET Core OpenID Connect handlers, with SSO presets for Microsoft Entra ID and Google.

Tooark.Utils

Description: This package contains utilities and helper functions for assorted operations.

Tooark.Validations

Description: This package provides validation features for data and entities.

Tooark.ValueObjects

Description: This package defines the value objects used by the application.

Contributing

Contributions are welcome! Feel free to open issues and pull requests in the Tooark repository.

License

This project is licensed under the BSD 3-Clause License. See the LICENSE file for details.

Product 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 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 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.

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
4.7.0 80 9/30/2026
4.6.0 102 9/29/2026
4.5.0 72 9/29/2026
4.4.0 78 9/28/2026
4.3.0 84 9/26/2026
4.2.1 80 9/25/2026
4.2.0 89 9/20/2026
4.1.0 81 9/18/2026
4.0.1 113 8/25/2026
4.0.0 98 8/25/2026
3.3.6 76 9/18/2026
3.3.5 81 8/25/2026
3.3.4 90 8/12/2026
3.3.3 94 7/27/2026
3.3.2 213 6/11/2026
3.3.1 136 6/6/2026
3.3.0 134 4/17/2026
2.3.5 80 9/18/2026
2.3.4 93 8/25/2026
2.3.3 78 7/27/2026
Loading failed