LANCommander.HQ.SDK
1.0.2
dotnet add package LANCommander.HQ.SDK --version 1.0.2
NuGet\Install-Package LANCommander.HQ.SDK -Version 1.0.2
<PackageReference Include="LANCommander.HQ.SDK" Version="1.0.2" />
<PackageVersion Include="LANCommander.HQ.SDK" Version="1.0.2" />
<PackageReference Include="LANCommander.HQ.SDK" />
paket add LANCommander.HQ.SDK --version 1.0.2
#r "nuget: LANCommander.HQ.SDK, 1.0.2"
#:package LANCommander.HQ.SDK@1.0.2
#addin nuget:?package=LANCommander.HQ.SDK&version=1.0.2
#tool nuget:?package=LANCommander.HQ.SDK&version=1.0.2
LANCommander.HQ.SDK
.NET client SDK for the LANCommander.HQ API.
LANCommander.HQ is a community-driven metadata service for LAN games. This SDK gives .NET applications strongly-typed access to every endpoint exposed by the API: game metadata search across providers (IGDB, MobyGames, Steam, GOG, etc.), admin CRUD for the canonical catalog, taxonomies, edition groups, identity mappings, DMCA workflow, and master-server browsing.
Install
dotnet add package LANCommander.HQ.SDK
Quick start
using LANCommander.HQ.SDK;
// Standalone usage
var client = new HQClient(new HQClientOptions
{
BaseAddress = new Uri("https://hq.lancommander.app"),
Token = "<bearer-token>",
});
var providers = await client.Providers.ListAsync();
var search = await client.Games.SearchAsync(provider: "igdb", query: "Half-Life");
var game = await client.Games.GetAsync("igdb", search.First().ProviderId);
Dependency injection
using LANCommander.HQ.SDK.Extensions;
services.AddLANCommanderHQ(options =>
{
options.BaseAddress = new Uri(configuration["HQ:BaseAddress"]!);
options.TokenProvider = sp => Task.FromResult<string?>(myTokenSource.Current);
});
Then inject HQClient (or any of the per-resource services like
AdminGamesClient, MasterServersClient, etc.) anywhere in your app.
Authentication
Most endpoints require a JWT obtained via the OIDC flow from the API server.
Bearer tokens are sent on every request via the Authorization header. A
Locale option (or X-Locale header) is forwarded so server-side localization
picks the right translation.
Coverage
| Surface | Service |
|---|---|
| Auth + identity | client.Auth |
| Providers | client.Providers |
| Game metadata | client.Games |
| Unified provider entries | client.UnifiedGames |
| Admin games | client.AdminGames |
| Admin taxonomies | client.AdminTaxonomies |
| Admin taxonomy aliases | client.AdminTaxonomyMappings |
| Admin identity mappings | client.AdminIdentityMappings |
| Admin edition groups | client.AdminEditionGroups |
| Admin media uploads | client.AdminMedia |
| Admin DMCA | client.AdminDmca |
| Public DMCA submission | client.Dmca |
| Master servers | client.MasterServers |
License
MIT
| 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 (>= 8.0.0)
- Microsoft.Extensions.Http (>= 8.0.0)
-
net8.0
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 8.0.0)
- Microsoft.Extensions.Http (>= 8.0.0)
-
net9.0
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 8.0.0)
- Microsoft.Extensions.Http (>= 8.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories (1)
Showing the top 1 popular GitHub repositories that depend on LANCommander.HQ.SDK:
| Repository | Stars |
|---|---|
|
LANCommander/LANCommander
|