IOTA API Implementation

Job ID: 38418989

Budget: €30 – €250 EUR

Create C# .Net Core class library (dll) project that will contain a IOTA blockchain API implementation as described below:
- Add Console app or an MSTest unit test to the solution to call and validate the implementation
- Read the IOTA developers documentation: https://patriq.gitbook.io/iota/development/c
- Add the IotaSDK to the project: https://github.com/IOTA-NET/IotaSDK.NET

Implement this use case:
- Connect to a node in the IOTA dev- or test network
- Create a wallet and account, synchronize with the Tangle, return all relevant account info like the address and the generated seed phrase of the new wallet
- The goal of this implementation is to save a MD5 hash (like for example this text: b7dce4605f3a9e2779d709e7b906ce59fc14624fe44387a6d43c140d0fe7c98f) in the blockchain; add the hash as a tag to the transaction and save in the blockchain
- Write the url to the IOTA testnet (or devnet) explorer with the just created transaction hash (the transaction ID) to the console, to be able to verify in a browser the transaction is actually written to the blockchain

- Make sure to use proper error handling in all cases
- Use Serilog to log every action to the Console; the log should read like a book. Use structured logging, e.g.: Log.Information("User {UserId} logged in at {LoginTime}", userId, DateTime.UtcNow);
- Commit all code to a provided github repo
- Add a readme.MD file (see here) to document what the app does, how to use it and what to look for in case of an error. Are there things someone should know while using the code? Add it all to the Readme.MD file.
- Before committing, make sure the code is reviewed. Remove all unnecessary code (like console.log etc.), make sure it is formatted, clean and neat and well tested.
Related categories: C# Programming Blockchain .NET Core