Noie.Nds.Api.Proto.V3
3.0.6
dotnet add package Noie.Nds.Api.Proto.V3 --version 3.0.6
NuGet\Install-Package Noie.Nds.Api.Proto.V3 -Version 3.0.6
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="Noie.Nds.Api.Proto.V3" Version="3.0.6" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Noie.Nds.Api.Proto.V3" Version="3.0.6" />
<PackageReference Include="Noie.Nds.Api.Proto.V3" />
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 Noie.Nds.Api.Proto.V3 --version 3.0.6
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Noie.Nds.Api.Proto.V3, 3.0.6"
#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 Noie.Nds.Api.Proto.V3@3.0.6
#: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=Noie.Nds.Api.Proto.V3&version=3.0.6
#tool nuget:?package=Noie.Nds.Api.Proto.V3&version=3.0.6
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Noie.Nds - .NET SDK for NoieDigitalSystem
Protocol SDK for NDS-API (NoieDigitalSystem) on .NET.
- Protocol spec:
../spec/proto/ - Repo docs index:
../docs/README.md
Installation
dotnet add package Noie.Nds.Api
Or for just the abstractions:
dotnet add package Noie.Nds.Api.Abstractions
Features
- Protocol types: Identity / Asset / Event / Transaction / Result / Context
- Governance & audit hooks: Policy (
Noie.Nds.Api.Policy) and Audit/Rationale (Noie.Nds.Api.Audit) - Type safety: nullable reference types enabled
- Proto compatibility: matches the NDS Protocol Buffers specification
- AOT-friendly: trimming analyzers enabled
Quick Start
Identity
using Noie.Nds.Api.Identity;
// Create player identity
var player = NdsIdentity.Of("550e8400-e29b-41d4-a716-446655440000", IdentityType.Player);
// Parse from string
var identity = NdsIdentity.FromString("PLAYER:550e8400-e29b-41d4-a716-446655440000");
Asset
using Noie.Nds.Api.Asset;
// Create asset IDs
var coins = AssetId.Player("coins");
var bossHp = AssetId.Server("world_boss_hp");
// Parse from string
var asset = AssetId.FromString("player:gold");
Result Pattern
using Noie.Nds.Api.Result;
// Create results
var success = NdsResult<int>.Success(100);
var failure = NdsResult<int>.Failure("INSUFFICIENT_BALANCE", "Not enough coins");
// Functional chaining
var result = success
.Map(x => x * 2)
.OnSuccess(x => Console.WriteLine($"Value: {x}"))
.OnFailure(e => Console.WriteLine($"Error: {e.Message}"));
// Pattern matching
var message = result.Match(
onSuccess: x => $"Got {x}",
onFailure: e => $"Failed: {e.Code}"
);
Context
using Noie.Nds.Api.Context;
// Create context for tracing
var context = NdsContext.Create();
Console.WriteLine($"TraceId: {context.TraceId}");
// Add metadata
var enriched = context.WithMeta("user", "player123");
Policy + Rationale
using Noie.Nds.Api.Policy;
using Noie.Nds.Api.Audit;
var policy = NdsPolicy.Of("shop-default-policy-v1", "quota");
var rationale = NdsRationale.Of(
source: "human_admin",
thoughtPath: new[] { "manual_review", "approved" }
);
Packages
| Package | Description |
|---|---|
Noie.Nds.Api.Abstractions |
Core interfaces and types |
Noie.Nds.Api |
Full implementation with Proto support |
Noie.Nds.Api.Proto |
Non-versioned protobuf types (e.g. asset, audit, context, policy, projection, query, transaction) |
Noie.Nds.Api.Proto.V3 |
Versioned protobuf types (nds.*.v1/*) generated at build time to avoid duplicate definitions |
Compatibility
- .NET 10 (
net10.0)
Related Projects
- nds-api - Protocol + SDKs monorepo
License
Apache License 2.0
| Product | Versions 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
- Google.Protobuf (>= 3.33.4)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Noie.Nds.Api.Proto.V3:
| Package | Downloads |
|---|---|
|
Noie.Nds.Api
NDS API - Lightweight append-only event protocol types for .NET |
GitHub repositories
This package is not used by any popular GitHub repositories.