Nethereum provides two types of packages. Standalone packages targeting Netstandard 1.1
, net451
, Netstandard 2.0
, Netcoreapp 2.1
and where possible net351 to support Unity3d. There is also a Nethereum.Portable
library which combines all the packages into a single portable library for backwards support. As netstandard
evolves and is more widely supported, the portable library might be eventually deprecated.
All the releases can be found in Nuget.
Note
Continuous Integration Builds – If you want to take advantage of a new features as soon as they are merged into the code base, or if there are critical bugs you need fixed, we invite you to try the packages on our continuous integration feed. Simply add https://www.myget.org/F/nethereum/api/v3/index.json
as a package source to either Visual Studio or Visual Studio for Mac.
To add a Nuget to your project you can:
Windows users
To install the main packages you can either:
PM > Install-Package Nethereum.Web3
or
PM > Install-Package Nethereum.Portable
Windows/Mac/Linux users
dotnet add package Nethereum.Web3
or
dotnet add package Nethereum.Portable
Main Libraries
Project Source | Nuget_Package | Description |
---|---|---|
Nethereum.Portable | Portable class library combining all the different libraries in one package | |
Nethereum.Web3 | Ethereum Web3 Class Library simplifying the interaction via RPC. Includes contract interaction, deployment, transaction, encoding / decoding and event filters | |
Nethereum.Unity | Unity3d integration, libraries can be found in the Nethereum releases | |
Nethereum.Geth | Nethereum.Geth is the extended Web3 library for Geth. This includes the non-generic RPC API client methods to interact with the Go Ethereum Client (Geth) like Admin, Debug, Miner | |
Nethereum.Quorum | Extension to interact with Quorum, the permissioned implementation of Ethereum supporting data privacy created by JP Morgan | |
Nethereum.Parity | Nethereum.Parity is the extended Web3 library for Parity. Including the non-generic RPC API client methods to interact with Parity. (WIP) |
Core Libraries
Project Source | Nuget_Package | Description |
---|---|---|
Nethereum.Generators | Code generation of Nethereum integration classes using the Solidity Abi and Bin | |
Nethereum.BlockchainProcessing | Nethereum.BlockchainProcessing Ethereum blockchain processing allowing to crawl Blocks, Transactions, TransactionReceipts and Logs (Event) for storage and / or using custom handlers like queuing , search, etc | |
Nethereum.JsonRpc.WebSocketClient | Nethereum.JsonRpc WebSocketClient | |
Nethereum.RPC.Reactive | Nethereum.RPC.Reactive, Reactive Client Subscriptions (WebSockets) and RPC Extensions for Nethereum | |
Nethereum.ENS | Nethereum.ENS Ethereum Name service library | |
Nethereum.Autogen.ContractApi | Generates dot net code for Ethereum (Solidity) contracts. Will automatically create dot net files based on .abi files within the target project during pre build. The generated code language is derived from the project file extension (csproj, vbproj, fsproj). More control can be gained by adding a Nethereum.Generator.config file to the root of the project. This describes the abi contracts and the code generation options for each (output folders, namespaces etc). | |
Nethereum.Parity.Reactive | Generates dot net code for Ethereum (Solidity) contracts. Will automatically create dot net files based on .abi files within the target project during pre build. The generated code language is derived from the project file extension (csproj, vbproj, fsproj). More control can be gained by adding a Nethereum.Generator.config file to the root of the project. This describes the abi contracts and the code generation options for each (output folders, namespaces etc). | |
Nethereum.TestRPCRunner | TestRpc embedded in Nethereum to simplify smart contract and Ethereum integration testing | |
Nethereum.Model | Nethereum.Model Ethereum Core Moel Class Library | |
Nethereum.Pantheon | Nethereum.Pantheon is the extended Web3 library for Pantheon. including the non-generic RPC API client methods to interact with the Java Ethereum Client (Pantheon) Admin, Debug, Miner, EEA, Clique, IBFT. | |
Nethereum.Signer.Trezor | Nethereum.Signer.Trezor provides the External Signing capability for Ethereum transactions and Messages using Trezor Hardware wallets | |
Nethereum.Signer.AzureKeyVault | Netherum.Signer.AzureKeyVault provides the External Signing capability for Ethereum transactions and Messages using Azure Key Vault | |
Nethereum.TestRPCRunner.Net45 | TestRpc embedded in Nethereum to simplify smart contract and Ethereum integration testing | |
Nethereum.ABI | Encoding and decoding of ABI Types, functions, events of Ethereum contracts | |
Nethereum.EVM | Ethereum Virtual Machine API | |
Nethereum.Hex | HexTypes for encoding and decoding String, BigInteger and different Hex helper functions | |
Nethereum.RPC | Core RPC Class Library to interact via RCP with an Ethereum client | |
Nethereum.JsonRpc.Client | Nethereum JsonRpc.Client core library to use in conjunction with either the JsonRpc.RpcClient, the JsonRpc.IpcClient or other custom Rpc provider | |
Nethereum.JsonRpc.RpcClient | JsonRpc Rpc Client provider using Edjcase.JsonRpc.Client | |
Nethereum JsonRpc IpcClient | JsonRpc IpcClient provider for Windows, Linux and Unix | |
Nethereum.RLP | RLP encoding and decoding | |
Nethereum.KeyStore | Keystore generation, encryption and decryption for Ethereum key files using the Web3 Secret Storage definition | |
Nethereum.Signer | Nethereum signer library to sign and verify messages, RLP and transactions using an Ethereum account private key | |
Nethereum.Contracts | Core library to interact via RPC with Smart contracts in Ethereum | |
Nethereum.IntegrationTesting | Integration testing module | |
Nethereum.HDWallet | Generates an HD tree of Ethereum compatible addresses from a randomly generated seed phrase (using BIP32 and BIP39) | |
Note: IPC is supported for Windows, Unix and Linux but is only available using Nethereum.Web3, not Nethereum.Portable
Smart contract API Libraries
Project Source | Nuget_Package | Description |
---|---|---|
Nethereum.StandardTokenEIP20 | Nethereum.StandardTokenEIP20 Ethereum Service to interact with ERC20 compliant contracts | |
Nethereum.Uport | Uport registry library | |
Nethereum.ENS | Ethereum Name service library (original ENS) WIP to upgrade to latest ENS |
Utilities
Project Source | Description |
---|---|
Nethereum.Generator.Console | A dot net core CLI tool which generates Nethereum code based on abi files |
Nethereum.Console | A collection of command line utilities to interact with Ethereum and account management |
Training modules
Project Source | Description |
---|---|
Nethereum.Workbooks | Xamarin Workbook tutorials including executable code |
Nethereum.Tutorials | Tutorials to run on VS Studio |
Code templates
Source | Description |
---|---|
Keystore generator | Keystore file generator |
Faucet | Web application template for an Ether faucet |
Nethereum Flappy | The source code files for the Unity3d game integrating with Ethereum |
Nethereum Game Sample | Sample game demonstrating how to integrate Nethereum with UrhoSharp’s SamplyGame to build a cross-platform game interacting with Ethereum |
Nethereum UI wallet sample | Cross platform wallet example using Nethereum, Xamarin.Forms and MvvmCross, targeting: Android, iOS, Windows Mobile, Desktop (windows 10 uwp), IoT with the Raspberry PI and Xbox. |
This article has been published from the source link without modifications to the text. Only the headline has been changed.