VEFramework.VEDriversLite
0.2.0
See the version list below for details.
dotnet add package VEFramework.VEDriversLite --version 0.2.0
NuGet\Install-Package VEFramework.VEDriversLite -Version 0.2.0
<PackageReference Include="VEFramework.VEDriversLite" Version="0.2.0" />
paket add VEFramework.VEDriversLite --version 0.2.0
#r "nuget: VEFramework.VEDriversLite, 0.2.0"
// Install VEFramework.VEDriversLite as a Cake Addin #addin nuget:?package=VEFramework.VEDriversLite&version=0.2.0 // Install VEFramework.VEDriversLite as a Cake Tool #tool nuget:?package=VEFramework.VEDriversLite&version=0.2.0
Virtual Economy Framework - VEDriversLite package
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 Core 3.1 (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!
Online Demo VENFT App
Please explore VE NFT App - C# Blazor Neblio NFT Web Wallet which uses VEDriversLite.
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
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 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!
VENFT App Server
This is actual main application which provides API for most of the commands from the VEDriversLite library. 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.
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
- TestVEDriversLite - testing utility wih integration tests/examples for VEDriversLite
- VEFrameworkUnitTest - Unit tests project.
- VENFTApp-Blazor - Example of use of VEDriversLite in Blazor WebAssembly App. Contains lots of Blazor components!!!
- 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
- 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.
- 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
LΓΆwenware - Company website
PureCrew - Company website
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 β https://github.com/NeblioTeam/neblio
- Microsoft - .NET Core, C#, Entity Framework Core - https://docs.microsoft.com/en-us/dotnet/core/introduction
- Blazor - Web Apps with C# - https://dotnet.microsoft.com/apps/aspnet/web-apps/blazor
- Newtonsoft.Json β JSON parsing library - https://github.com/JamesNK/Newtonsoft.Json
- NBitcoin - .NET C# Library for Bitcoin based cryptocurrencies - https://github.com/MetacoSA/NBitcoin
- Ant Desing Blazor - Blazor component library - https://antblazor.com/en-US/
- BlazorFileReader - File Reader component for Blazor - https://github.com/Tewr/BlazorFileReader
- IPFS Http Client C# - Http Api wrapper for IPFS - https://github.com/richardschneider/net-ipfs-http-client
- DocFx β API documentation generator - https://github.com/dotnet/docfx
- Swagger β OpenAPI description of REST API - https://swagger.io/
- MQTTNet β library for MQTT connection - https://github.com/chkr1011/MQTTnet
- Log4net β library for logging - https://github.com/apache/logging-log4net
- Binance.Net β library for connecting to Binance Exchange - https://github.com/JKorf/Binance.Net
- Jint β library for run JavaScript in C# - https://github.com/sebastienros/jint
- Npgsql β EFC provider for PostgreSQL - https://github.com/npgsql/efcore.pg
- Node.js β JavaScript runtime - https://nodejs.org/en/
- Node-RED β IoT tool for event driven connections -
- Aedes Node-Red node β MQTT Broker - https://github.com/moscajs/aedes
- Paho MQTT β JavaScript library for MQTT client - https://github.com/eclipse/paho.mqtt.javascript
- Chart JS - JavaScript library for charts - https://github.com/chartjs
- CodeJar - Simple JavaScript editor - https://github.com/antonmedv/codejar
- Prism - Code Syntax Highlight library - https://prismjs.com/
- Crypto JS - JS library of crypto standards - https://github.com/brix/crypto-js
- Chessboard JS - JS library for chess game - https://chessboardjs.com/
- Bootstrap Studio β tool for simplify web-based UI - https://bootstrapstudio.io/
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 | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. 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. |
.NET Core | netcoreapp3.1 is compatible. |
-
.NETCoreApp 3.1
- Ipfs.Http.Client (>= 0.33.0)
- Microsoft.Extensions.Caching.Memory (>= 3.1.23)
- NBitcoin (>= 7.0.6)
- NBitcoin.Altcoins (>= 3.0.8)
- Newtonsoft.Json (>= 13.0.1)
- WordPressPCL (>= 1.9.0)
NuGet packages (3)
Showing the top 3 NuGet packages that depend on VEFramework.VEDriversLite:
Package | Downloads |
---|---|
VEFramework.VEBlazor
.NET Blazor component and dApp template library. It contains lots of components related to blockchain, IPFS, NFTs and other web3 and Industry4.0 technologies. |
|
VEFramework.VEDriversLite.Extensions.WooCommerce
.NET drivers for getting information from and to the WooCommerce instance. It can hanlde also communication with main WordPress database |
|
VEFramework.VEDriversLite.Builders.Neblio
.NET drivers for manual assembly of the Nebli transactions. It is dev tool. |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
0.4.3 | 486 | 9/28/2023 |
0.4.2 | 429 | 9/22/2023 |
0.4.1 | 540 | 8/16/2023 |
0.4.0 | 540 | 8/16/2023 |
0.3.42 | 551 | 4/17/2023 |
0.3.41 | 694 | 4/9/2023 |
0.3.31 | 706 | 3/17/2023 |
0.3.21 | 929 | 6/27/2022 |
0.3.4 | 588 | 4/9/2023 |
0.3.3 | 719 | 2/9/2023 |
0.3.2 | 1,192 | 5/27/2022 |
0.3.0 | 1,297 | 5/1/2022 |
0.2.0 | 804 | 3/31/2022 |
0.1.91 | 830 | 3/13/2022 |
0.1.9 | 710 | 1/9/2022 |
0.1.8 | 835 | 8/12/2021 |
0.1.7 | 718 | 8/11/2021 |
0.1.6 | 786 | 7/21/2021 |
0.1.5 | 770 | 7/2/2021 |
0.1.4 | 712 | 7/2/2021 |
0.1.3 | 785 | 6/13/2021 |
0.1.2 | 718 | 5/25/2021 |
- Update to .NET Core 3.1
- Update NBitcoin package and related functions
- Possible to run in .NET 6.0 Blazor WebAssembly
- Added tests for encryption and sign/verify messages
- Refactoring of UnitTests in the NeblioTransactionHelpers
- Refactoring in NeblioTransactionHelpers
- Refactoring in DogeTransactionHelpers
- Change of sign/verify messages based on update of NBitcoin
- Added lots of XML comments to parameters and functions