Tugi.Integration.IGaming 1.6.3

dotnet add package Tugi.Integration.IGaming --version 1.6.3
                    
NuGet\Install-Package Tugi.Integration.IGaming -Version 1.6.3
                    
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="Tugi.Integration.IGaming" Version="1.6.3" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Tugi.Integration.IGaming" Version="1.6.3" />
                    
Directory.Packages.props
<PackageReference Include="Tugi.Integration.IGaming" />
                    
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 Tugi.Integration.IGaming --version 1.6.3
                    
#r "nuget: Tugi.Integration.IGaming, 1.6.3"
                    
#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 Tugi.Integration.IGaming@1.6.3
                    
#: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=Tugi.Integration.IGaming&version=1.6.3
                    
Install as a Cake Addin
#tool nuget:?package=Tugi.Integration.IGaming&version=1.6.3
                    
Install as a Cake Tool

Tugi.Integration

The Tugi integration library simplifies connecting your code with the Tugi support system and AI agent. It is designed to provide most features out of the box; however, any feature may be overridden for enhanced control. For example the library will add all the /.tugi endpoints to your application and only defer to your code when absolutely necessary, but you can choose to forgo these default implementations and add the endpoints in your own code in your own style. This library is fully open-source (with the MIT licence, so as to be usable with proprietary code) if you would like to use our implementations as a reference.

Niches

Some parts of the code are specialised towards certain markets (aka verticals), as the requirements differ between them. For example the data required about users in healthcare would be very different to the data required about users in bike maintenance. These areas of specialisation are referred to in the code as a Niche, and we can use a namespace alias to keep most code generic:

using Tugi.Integration;
using Niche = Tugi.Integration.IGaming;

namespace MyApplication;

public class TugiUserProvider(PlayerDatabase _db) : Niche.IUserProvider
{
	public async Task<(string, Niche.UserProfile?)> GetAsync(BrandConfig brand, string? id, CancellationToken _)
	{
		var player = _db.GetPlayer(id);
		return (id, new()
		{
			Name = player.Name,
			DisplayName = player.Username,
			Email = player.EMail,
		});
	}
}

The technical reasons for this are that Tugi.Integration requires an IUserProvider instance in the core library, but also needs to know the concrete types provided without knowing which other library (Tugi.Integration.IGaming in this case) is in use. Using the type alias Niche just makes the code more readable while having two slightly different IUserProvider interfaces.

Use

  • Installation

    Tugi.Integration is a transitive dependency of the niche-specific integration libraries, so only one of those needs to be installed (and indeed, only one at once is supported):

    dotnet package add Tugi.Integration.IGaming --project MyApplication.csproj
    
  • Importing

    using Tugi.Integration;
    using Niche = Tugi.Integration.IGaming;
    
  • Basic Setup

    // Service to provide user data to `Tugi`.
    builder.Services.AddSingleton<IUserProvider, TugiUserProvider>();
    
    // Add the internal `Tugi` services.
    builder.Services.AddTugi();
    
    // Use the internal `Tugi` endpoints.
    app.UseTugi();
    
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 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. 
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
1.6.3 46 5/20/2026
1.6.2 83 5/18/2026
1.6.1 95 5/18/2026
1.6.0 182 5/18/2026
1.5.0 121 5/14/2026
1.4.4 99 5/8/2026
1.4.2 113 5/8/2026
1.4.1 98 5/8/2026
1.4.0 88 5/6/2026
1.3.7 91 5/5/2026
1.3.6 85 5/4/2026
1.3.5 205 5/1/2026
1.3.4 90 4/30/2026
1.3.2 85 4/30/2026
1.3.1 87 4/29/2026
1.3.0 95 4/29/2026
1.2.0 139 3/23/2026
1.1.5 114 3/17/2026
1.1.4 103 3/17/2026
1.0.1 94 5/8/2026
Loading failed