kth-bch
0.23.1-pullrequest0016-0004
See the version list below for details.
dotnet add package kth-bch --version 0.23.1-pullrequest0016-0004
NuGet\Install-Package kth-bch -Version 0.23.1-pullrequest0016-0004
<PackageReference Include="kth-bch" Version="0.23.1-pullrequest0016-0004" />
<PackageVersion Include="kth-bch" Version="0.23.1-pullrequest0016-0004" />
<PackageReference Include="kth-bch" />
paket add kth-bch --version 0.23.1-pullrequest0016-0004
#r "nuget: kth-bch, 0.23.1-pullrequest0016-0004"
#:package kth-bch@0.23.1-pullrequest0016-0004
#addin nuget:?package=kth-bch&version=0.23.1-pullrequest0016-0004&prerelease
#tool nuget:?package=kth-bch&version=0.23.1-pullrequest0016-0004&prerelease
<img width="200px" src="https://github.com/k-nuth/cs-api/raw/master/docs/images/kth-purple.png" />
C# API
Bitcoin Cash full node as a C# library
<a target="_blank" href="https://t.me/knuth_cash">
</a>
<a target="_blank" href="https://k-nuth.slack.com/">
</a>
<p align="center"><img width="800px" src="docs/images/demo.png" /></p>
Knuth C# API is a high performance implementation of the Bitcoin Cash protocol focused on users requiring extra performance and flexibility. It is a Bitcoin Cash node you can use as a library.
Prerequisites
Knuth C# API is a wrapper over our C++ libraries, therefore in order to use the C# library we will need the toolchain to build the C++ libraries. Don't panic, you won't have to manually build our C++ libraries, you just have to provide some prerequisites, our build system will take care of the rest.
To speed up the compilation, we provide some pre-built C++ libraries for some common computer platforms, but case there are no pre-built binaries for your platform, our build system will automatically try to build from source code. In such a scenario, the following requirements must be added to the previous ones:
- C++23 conforming compiler. Could be GCC12, Clang16 or Visual Studio 2022
- CMake building tool, version 3.8 or newer.
Getting started
- Create a new C# console project:
$ mkdir HelloKnuth
$ cd HelloKnuth
$ dotnet new console
- Add a reference to our C# API package:
$ dotnet add package kth-bch
- Edit
Program.cs
and write some code:
using System;
using System.Threading.Tasks;
using Knuth;
namespace HelloKnuth {
public class Program {
private static bool running_;
static async Task Main(string[] args) {
Console.CancelKeyPress += OnSigInterrupt;
var config = Knuth.Config.Settings.GetDefault(NetworkType.Mainnet);
using (var node = new Knuth.Node(config)) {
await node.LaunchAsync();
Console.WriteLine("Knuth node has been launched.");
var height = await node.Chain.GetLastHeightAsync();
Console.WriteLine($"Current height in local copy: {height.Result}");
if (await ComeBackAfterTheBCHHardFork(node)) {
Console.WriteLine("Bitcoin Cash has been created!");
}
}
Console.WriteLine("Good bye!");
}
private static async Task<bool> ComeBackAfterTheBCHHardFork(Node node) {
UInt64 hfHeight = 478559;
while (running_) {
var res = await node.Chain.GetLastHeightAsync();
if (res.Result >= hfHeight) return true;
await Task.Delay(10000);
}
return false;
}
private static void OnSigInterrupt(object sender, ConsoleCancelEventArgs args) {
Console.WriteLine("Stop signal detected.");
args.Cancel = true;
running_ = false;
}
}
}
- Enjoy Knuth node as a C# library:
$ dotnet run
Issues
Each of our modules has its own Github repository, but in case you want to create an issue, please do so in our main repository.
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.CSharp (>= 4.7.0)
- Microsoft.Extensions.Logging.Abstractions (>= 8.0.1)
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 |
---|---|---|
0.23.1 | 159 | 12/9/2024 |
0.23.1-pullrequest0016-0004 | 102 | 12/9/2024 |
0.23.1-pullrequest0015-0003 | 104 | 12/9/2024 |
0.23.1-pullrequest0014-0002 | 108 | 12/9/2024 |
0.23.1-feat-re-order-fi0002 | 103 | 12/9/2024 |
0.23.1-feat-improve-rea0002 | 111 | 12/9/2024 |
0.23.1-feat-add-readme0001 | 108 | 12/9/2024 |
0.23.1-ci0003 | 97 | 12/9/2024 |
0.23.1-ci0002 | 102 | 12/9/2024 |
0.23.1-ci0001 | 100 | 12/9/2024 |
0.23.0 | 147 | 12/9/2024 |
0.22.1-pullrequest0013-0005 | 104 | 12/9/2024 |
0.22.1-pullrequest0012-0004 | 113 | 12/8/2024 |
0.22.1-pullrequest0011-0003 | 110 | 12/8/2024 |
0.22.1-feat-payment-add0004 | 104 | 12/9/2024 |
0.22.1-feat-cpp-23-0002 | 116 | 12/8/2024 |
0.22.1-feat-copyright--0003 | 103 | 12/8/2024 |
0.22.1-ci0004 | 108 | 12/9/2024 |
0.22.1-ci0003 | 111 | 12/8/2024 |
0.22.1-ci0002 | 135 | 12/8/2024 |
0.22.0 | 154 | 9/9/2024 |
0.21.1-pullrequest0009-0015 | 119 | 9/9/2024 |
0.21.1-pullrequest0009-0014 | 114 | 9/9/2024 |
0.21.1-feat-bch-upgrad-0014 | 114 | 9/9/2024 |
0.21.1-ci0001 | 105 | 9/9/2024 |
0.21.0 | 564 | 11/4/2022 |
0.20.1-ci0003 | 293 | 11/4/2022 |
0.20.1-ci0002 | 311 | 11/4/2022 |
0.20.1-ci0001 | 287 | 8/13/2022 |
0.20.0 | 556 | 8/13/2022 |
0.19.1-ci0016 | 244 | 8/13/2022 |
0.19.1-ci0015 | 264 | 8/13/2022 |
0.19.1-ci0014 | 278 | 8/12/2022 |
0.19.1-ci0006 | 286 | 8/9/2022 |
0.19.0 | 608 | 3/26/2022 |
0.18.1-pullrequest0007-0015 | 294 | 3/26/2022 |
0.18.1-dotnet6-0015 | 263 | 3/26/2022 |
0.18.1-dotnet6-0014 | 288 | 3/26/2022 |
0.18.1-dotnet6-0011 | 285 | 3/25/2022 |
0.18.1-dotnet6-0010 | 309 | 3/25/2022 |
0.18.1-ci0005 | 281 | 3/26/2022 |
0.18.1-ci0002 | 286 | 3/23/2022 |
0.18.1-ci0001 | 368 | 9/8/2021 |
0.18.0 | 505 | 9/8/2021 |
0.17.1-ci0002 | 364 | 9/8/2021 |
0.17.0 | 514 | 9/8/2021 |
0.16.1-organize170block0001 | 339 | 9/7/2021 |
0.16.1-ci0002 | 390 | 9/8/2021 |
0.16.0 | 496 | 5/14/2021 |
0.15.1-ci0002 | 378 | 5/14/2021 |
0.15.0 | 508 | 4/14/2021 |
0.14.1-ci0001 | 390 | 4/14/2021 |
0.14.0 | 500 | 4/14/2021 |
0.13.2-ci0001 | 381 | 4/14/2021 |
0.13.1 | 534 | 3/11/2021 |
0.13.1-ci0009 | 440 | 3/11/2021 |
0.13.1-ci0008 | 453 | 3/11/2021 |
0.12.0 | 522 | 2/17/2021 |
0.11.1-ci0028 | 414 | 2/17/2021 |
0.11.1-ci0018 | 380 | 2/12/2021 |
0.11.1-ci0016 | 388 | 2/12/2021 |
0.11.1-ci0008 | 396 | 2/12/2021 |
0.11.1-ci0006 | 382 | 2/11/2021 |
0.11.1-ci0005 | 391 | 2/11/2021 |
0.11.1-ci0004 | 390 | 2/11/2021 |
0.11.1-ci0003 | 413 | 2/11/2021 |
0.11.0 | 529 | 2/10/2021 |
0.10.2-ci0017 | 405 | 2/10/2021 |
0.10.2-ci0001 | 387 | 2/8/2021 |
0.10.1 | 512 | 2/7/2021 |
0.10.0 | 477 | 2/5/2021 |
0.9.1-ci0006 | 384 | 2/5/2021 |
0.9.1-ci0003 | 458 | 12/22/2020 |
0.9.0 | 569 | 12/22/2020 |
0.8.0 | 605 | 10/29/2020 |
0.7.1-ci0005 | 470 | 10/28/2020 |
0.7.0 | 658 | 10/20/2020 |
0.6.0 | 669 | 10/19/2020 |
0.5.1-ci0004 | 524 | 10/19/2020 |
0.5.1-ci0002 | 462 | 10/19/2020 |
0.5.1-ci0001 | 464 | 10/17/2020 |
0.5.0 | 604 | 10/13/2020 |
0.4.1-ci0040 | 475 | 10/13/2020 |
0.4.1-ci0039 | 515 | 10/2/2020 |
0.4.0 | 656 | 9/18/2020 |
0.3.0 | 591 | 9/6/2020 |
0.2.1 | 643 | 8/31/2020 |
0.2.0 | 618 | 8/28/2020 |
0.1.0 | 625 | 8/25/2020 |