ThunderPipe.Core
1.0.0
dotnet add package ThunderPipe.Core --version 1.0.0
NuGet\Install-Package ThunderPipe.Core -Version 1.0.0
<PackageReference Include="ThunderPipe.Core" Version="1.0.0" />
<PackageVersion Include="ThunderPipe.Core" Version="1.0.0" />
<PackageReference Include="ThunderPipe.Core" />
paket add ThunderPipe.Core --version 1.0.0
#r "nuget: ThunderPipe.Core, 1.0.0"
#:package ThunderPipe.Core@1.0.0
#addin nuget:?package=ThunderPipe.Core&version=1.0.0
#tool nuget:?package=ThunderPipe.Core&version=1.0.0
<p align="center"> <img src="https://raw.githubusercontent.com/WarperSan/ThunderPipe/refs/heads/master/icon.png" alt="Logo" height="128"/> </p>
ThunderPipe.Core
ThunderPipe.Core is the shared logic that powers every ThunderPipe project.
Building on ThunderPipe.Core
If the existing tools don't meet your needs, you can build your own by referencing this package. Doing so gives you full access to everything ThunderPipe.Core exposes.
Before building a custom integration, consider opening an issue to describe your use case. Your needs may already be on the roadmap, or they could shape a future feature that benefits everyone.
Architecture
Clients
Clients execute a single action against the server. Each client calls the appropriate API endpoint and performs its designated task.
Services
Services coordinate a sequence of actions to accomplish a more complex task. Rather than requiring every consumer to orchestrate a multistep procedure correctly, a service exposes a single method that handles the entire flow. This also protects consumers from changes to Thunderstore's internals, unless the underlying procedure itself changes significantly.
Services are reserved for complex actions. When an operation maps to a single API call, it stays at the client level.
Models
Models wrap around data, and ensure its validity. Instead of passing an arbitrary string, methods can pass an instance of the model, guaranteeing the intent and the validity of the data.
| 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 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. |
-
net8.0
- Microsoft.Extensions.Logging (>= 10.0.5)
- Newtonsoft.Json (>= 13.0.4)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.