Introduction

What is VisionWeb?

VisionWeb Web - github

VisionWeb aims to deliver a unified, seamless development experience influenced by Ethereum's Web3 implementation. We have taken the core ideas and expanded upon it to unlock the functionality of Vision's unique feature set along with offering new tools for integrating DApps in the browser, Node.js and IoT devices.

Compatibility

  • Version built for Node.js v6 and above
  • Version built for browsers with more than 0.25% market share

You can access either version specifically from the dist folder.

VisionWeb is also compatible with frontend frameworks such as:

  • Angular
  • React
  • Vue.

You can also ship VisionWeb in a Chrome extension.

Installation

Node.js

npm install visionweb

or

yarn add visionweb

Browser

First, don't use the release section of this repo, it has not updated in a long time.

Then easiest way to use VisionWeb in a browser is to install it as above and copy the dist file to your working folder. For example:

cp node_modules/visionweb/dist/VisionWeb.js ./js/visionweb.js

so that you can call it in your HTML page as

<script src="./js/visionweb.js"><script>

Creating an Instance

First off, in your javascript file, define VisionWeb:

const VisionWeb = require("visionweb");

When you instantiate VisionWeb you can define

  • fullNode
  • solidityNode
  • eventServer
  • privateKey

you can also set a

  • fullHost

which works as a jolly. If you do so, though, the more precise specification has priority.
Supposing you are using a server which provides everything, you can instantiate VisionWeb as:

const visionWeb = new VisionWeb({
    fullHost: "full host",
    privateKey: "your private key",
});

For retro-compatibility, though, you can continue to use the old approach, where any parameter is passed separately:

const visionWeb = new VisionWeb(
    fullNode,
    solidityNode,
    eventServer,
    privateKey
);

If you are, for example, using a server as full and solidity node, and another server for the events, you can set it as:

const visionWeb = new VisionWeb({
    fullHost: "full host",
    eventServer: "event server",
    privateKey: "your private key",
});

If you are using different servers for anything, you can do

const visionWeb = new VisionWeb({
    fullNode: "full node",
    solidityNode: "solidity node",
    eventServer: "event server",
    privateKey: "your private key",
});

If you want to use vpioneer testnet, you can create an VisionWeb instance as follows:

const VisionWeb = require('visionweb');
const HttpProvider = VisionWeb.providers.HttpProvider;
  
const FullNode = new HttpProvider("https://vpioneer.infragrid.v.network/");
const SolidityNode = new HttpProvider("https://vpioneer.infragrid.v.network/");
const EventServer = new HttpProvider("https://vpioneer.infragrid.v.network/");
const PrivateKey = "your private key";
const visionWeb = new VisionWeb(FullNode, SolidityNode, EventServer, PrivateKey);