VEFramework.VEDriversLite.Cryptocurrencies
0.3.2
dotnet add package VEFramework.VEDriversLite.Cryptocurrencies --version 0.3.2
NuGet\Install-Package VEFramework.VEDriversLite.Cryptocurrencies -Version 0.3.2
<PackageReference Include="VEFramework.VEDriversLite.Cryptocurrencies" Version="0.3.2" />
paket add VEFramework.VEDriversLite.Cryptocurrencies --version 0.3.2
#r "nuget: VEFramework.VEDriversLite.Cryptocurrencies, 0.3.2"
// Install VEFramework.VEDriversLite.Cryptocurrencies as a Cake Addin #addin nuget:?package=VEFramework.VEDriversLite.Cryptocurrencies&version=0.3.2 // Install VEFramework.VEDriversLite.Cryptocurrencies as a Cake Tool #tool nuget:?package=VEFramework.VEDriversLite.Cryptocurrencies&version=0.3.2
VEFramework
Virtual Economy framework will help you to create applications related to Web3, Blockchains, IoT, NFTs, Cryptocurrencies and other useful technologies.
This project is OpenSource for personal, educational and commercial use also π
Main framework is .NET 6.0 (VEDriversLite). You can use it now with .NET 6.0 Blazor WebAssembly application π Code is written in C#, HTML, CSS and JavaScript. Solution is for Visual Studio 2022.
Repository now contains new version of drivers for Neblio and Doge: VEDriversLite. It is also available as Nuget package. Please check this drivers and documentation.
We recommend to use VEDriversLite if you need to build app which uses just Neblio or Doge!
If you need to build dApp with the VEDriversLite we recommend you to explore New Library VEBlazor. Source code you can find here. Soon as Nuget package. Which is built on top of the Blazorise library.
Online Demo VENFT App
<p align="center"> <img width="200" src="https://ipfs.infura.io/ipfs/QmT8wYFsDR55wCKKUwRwXYfxu67uGWpbVCKfg4kxiCM7pJ"> <p>
New Testing Version of the VENFT App build on the VEBlazor is published here. It is testing version and still has few things to solve. It does not display the SubAccounts now, but you can load the backup file from the old version of VENFT App.
Please explore also old VENFT App - C# Blazor Neblio NFT Web Wallet which uses VEDriversLite. This version does not use the VEBlazor library.
Web Wallet with integrated NFT minting and marketplace.
Aidrop of tokens and Neblio for testing
Do you need the tokens and some Neblio for testing and development? Please visit VENFT App Project Page.
If you need more tokens or Neblio plese contact the author of the project on email
VEFramework components
The VEFramework offers lots of different libraries, drivers, components which will reduce code in your application a lot.
Development with VEFramework
The most compatible languages are C#, VisualBasic or F#. For lots of applications you can use also different languages and connect backend with use of API or MQTT. This allows to use this framework with more languages such as JavaScript, HTML, Python and others.
Hello World with VEDriversLite
Install the .NET Core 3.1 SDK.
Create project
Open console line and create empty folder and ConsoleApplication project
mkdir CreateAccountExample
cd CreateAccountExample
dotnet new console
dotnet add package VEFramework.VEDriversLite
Write simple code to mint NFT
Please remember that when you create address you need to load the Neblio and tokens to the address! It is good practice to create VENFT Web wallet for the testing and development. You can request the Airdrop or you can send the Neblio from exchange, Orion wallet or staking desktop wallet.
using System;
using VEDriversLite;
namespace CreateAccountExample
{
internal class Program
{
static async System.Threading.Tasks.Task Main(string[] args)
{
Console.WriteLine(" Hello World With VEDriversLite!");
var account = new NeblioAccount(); // create NeblioAccount object
await account.CreateNewAccount("mypassword"); // create new account
Console.WriteLine($" New Neblio Address: {account.Address}");
Console.WriteLine(" Please load Neblio and tokens to Address and then continue.");
Console.ReadLine(); // wait for enough confirmation on blockhain
// create NFT Image object and load simple test data
var nft = new VEDriversLite.NFT.ImageNFT("")
{
Name = "My Hello World NFT",
Description = "Hello World NFT for testing.",
ImageLink = "https://MyNFT.image"
};
var res = await account.MintNFT(nft); // mint NFT with account
// process result
if (res.Item1)
Console.WriteLine($" Minted with Transaction hash: {res.Item2}");
else
Console.WriteLine($" Cannot mint NFT: {res.Item2}");
}
}
}
Then you can run the code
dotnet restore
dotnet run
Here is the output from this program:
Here you can see the details of the transaction in the Neblio Blockchain Explorer.
Project and Code Documentation
First Steps
First Steps with VEDrivers Lite
First Steps with API of VENFT App Server
Project Wiki
VEDriversLite Docfx documentation
!This is new Light version of drivers!
VEBlazor
This complete Blazor component library and dApp template has own readme here.
VENFT App Server
This is actual main application which provides API for most of the commands from the VEDriversLite library.
Docker
You can run it as app service or in Docker. On Wiki you can find article about how to use Docker and VENFT App Server.
Here you can find another related services and how to run them as Docker container:
- Nebliod - Neblio Blockchain Node: Wiki
- IPFS Node - Wiki
- Dockercompose to run together VENFT App Server + Nebliod + IPFS is on Wiki here
VEconomy Application
Application has own Readme here
Supported Platforms
Project is based on .NET Core 5.0 so it can run on:
- Windows
- Windows 10 IoT
- Linux
- MacOS
- iOS
- Android
- x86, x64, AnyCPU, ARM And other platforms which .NET Core supports.
Projects in the solution
- VEDriversLite - Light version and Actual Recommended! version of Neblio drivers, includes NFT drivers
- VEBlazor - Blazor component library and dApp template
- TestVEDriversLite - testing utility wih integration tests/examples for VEDriversLite
- VEFrameworkUnitTest - Unit tests project.
- VEBlazor.Demo.VENFTApp.Client - New version of VENFT App build with VEBlazor library
- VEBlazor.Demo.EventsAndTickets - Another example of the dApp built with the VEBlazor
- BDP-WASM - dApp for storing the X-Ray Images on Blockchain and IPFS as NFT, especially in industry. Build with VEBlazor.
- VENFTApp-Blazor - Example of use of VEDriversLite in Blazor WebAssembly App. Without VEBlazor component library!
- VENFTApp-Server - Example of use of VEDriversLite in Blazor Server App. It offers API for lots of VEDriversLite commands.
- VEOnePage - Example of the simple webpage which works as presentation page for some address NFTs. Example was created for Coruzant.com.
- VECryptographyUtilities - encrypt and decrypt keys example
Older projects. Most of them needs testing and update based on refactoring of VEDriversLite
- NeblioRestApi - .NET Core 5.0 wrapper for Neblio API.
- TestNeblio β testing utility for integration tests.
- VEconomy β ASP.NET application to be shaped to your app or used as it is. (needs refactoring)
- VEDrivers β digital twins and other drivers for economy-based applications. (needs refactoring)
- VEGameDrivers - drivers for connecting games and blockchain (obsolete, will be replaced with VEDriversLite)
- VENodeExecutor β runs node-red as a service.
- VEQTWalletExecutor β runs QT Wallet as a service.
- VEUsersUtility β utility to create first admin user in Db
Other Projects
This repository contains also project examples for Arduino IDE. It is developed on M5StickC HW. It is based on ESP32 MCU (official page: M5Stack). These projects you can find in folder Examples-ArduinoIDE-M5StickC.
For compilation you need to install Arduino IDE and M5Stack libraries and ESP32 libraries into IDE (Guidlines).
Main Features
- Create Blockchain Account and send transactions or NFTs with just few lines of the code
- VEFramework works with multiple blockchains. Now it has support of Neblio and Dogecoin
- Blazor Webassebmly example VE NFT App
- Blazor Component library and dApp template - VEBlazor
- Server App with prepared API for integration existing app or UI with Web3 environments
- Set of drivers/helpers for minting, sell and trade NFTs. Already with Images, Post, Music, Profile, Payment, etc. NFTs.
- Store and browse multiple images, pdf, or other kind of files in the one NFT.
- Integration of IPFS API which uses Infura.io as IPFS node
- Create blockchain application without need of running own node
- NFT Ownership verification system with creating QR codes/messages
- NFT Events and Tickets system.
- System of P2P NFT encrypted metadata and encrypted filecontainers stored on ipfs
- Encryption with EDCH shared secret algorithm. Dont need to share password between peers, they will calculate it!
- RPC Client for connection the blockchain node
- Neblio Blockchain API wrapper and helper classes
- Drivers for special transactions such as split transactions, multiple token input/output, minting multiple NFTs, etc.
- Dogecoin API wrapper and helper classes.
Other features you can explore in the readme of the specifics projects in the solution.
Roadmap
1-2Q 2022
- Unit Tests for most of the functions
- Refactoring of UX/UI Blazor components and VENFT App
- Automated deployment of apps
- Dockers for VENFT App Server and IPFS node and Neblio node
- Simple web page demo for display specific NFTs of some address
- Add common account interface in the VEDriversLite
- VEDriversLite core refactoring β version 0.2.0
3-4Q 2020
- Integration of some parts of the PLFramework into the VEDriversLite π
- VE Blazor Component Library
- Integration of few new blockchains
- Raspberry PI preinstalled image
- Integration with SAP
Reporting Issues
Feel free to open Issue if you will find some bug or if you are looking for some new feature. On Wiki you can find the information about creating the issues.
Contributors and Development Partners
Tomas Svoboda - LinkedIn, Twitter
RoundSqr - Company website
Mladen MacanoviΔ - LinkedIn, Twitter
Francis Karuri - LinkedIn
We are looking for new contributors. Please feel free to contact me on tomas.svoboda@technicinsider.com.
Thanks
Main Thanks goes to Mr. Jan Kuznik. He taught me lots of great knowledge about programming.
βTestNeblio.exeβ utility is Mr.Kuznik design and he agreed to publish it with this project. Many thanks for this great tool.
Many thanks for Blazor developers. It is absolutelly amazing tool!
This project uses some other opensource libraries or other tools. Many thanks to all authors of these projects and other opensource projects.
- Neblio β Blockchain solution for Enterprises
- Microsoft - .NET Core, C#, Entity Framework Core
- Blazor - Web Apps with C#
- Blazorise - Component library for Blazor
- Newtonsoft.Json β JSON parsing library
- NBitcoin - .NET C# Library for Bitcoin based cryptocurrencies
- Ant Desing Blazor - Blazor component library
- BlazorFileReader - File Reader component for Blazor
- IPFS Http Client C# - Http Api wrapper for IPFS
- DocFx β API documentation generator
- Swagger β OpenAPI description of REST API
- MQTTNet β library for MQTT connection
- Log4net β library for logging
- Binance.Net β library for connecting to Binance Exchange
- Jint β library for run JavaScript in C#
- Npgsql β EFC provider for PostgreSQL
- Node.js β JavaScript runtime
- Node-RED β IoT tool for event driven connections
- Aedes Node-Red node β MQTT Broker
- Paho MQTT β JavaScript library for MQTT client
- Chart JS - JavaScript library for charts
- CodeJar - Simple JavaScript editor
- Prism - Code Syntax Highlight library
- Crypto JS - JS library of crypto standards
- Chessboard JS - JS library for chess game
- Bootstrap Studio β tool for simplify web-based UI
License
This framework can be used for any use even for commercial use. License is BSD 2 with additional conditions.
Please read it here:
https://github.com/fyziktom/VirtualEconomyFramework/blob/main/License/license.txt
Donation
If you like this project, please donate the team with some Nebl, Dogecoin, Bitcoin or ReddCoin.
You can also help as official sponsor. For this option and why to do that please contact me on tomas.svoboda@technicinsider.com.
Thanks to donations we can focus our energy to this opensource project.
Project Neblio Address - NUhbMPqKYaGe8irb4kXECb8KN79YbD6ZyX
Project Doge Address - D9g337oMmTVUnyMdpYDdSS5ob58CD7Hq7y
Project BTC Address - 34cuGjGbdVBHvwS3dha8pMv63jbxsF96MP
Project ReddCoin Address - RiPAe5nGNvtyPfxCC3nQoXes6EjgduQct2
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. 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. |
-
net6.0
- Newtonsoft.Json (>= 13.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.
- Just cleanup and added XML tags