vns-web3
v1.2.4
Published
Vnschain JavaScript API wrapper repository
Downloads
1
Readme
vns-web3.js - Vnschain JavaScript API
This is the Vnschain JavaScript API which connects to the Generic JSON RPC spec.
You need to run a local or remote [Vnschain] node to use this library.
Please read the documentation for more.
Installation
Node
npm install vns-web3
In the Browser
Use the prebuild dist/web3.min.js
, or
build using the web3.js repository:
npm run-script build
Then include dist/web3.js
in your html file.
This will expose Web3
on the window object.
Usage
// in node.js
var Web3 = require('vns-web3');
var web3 = new Web3('ws://localhost:8546');
console.log(web3);
> {
vns: ... ,
shh: ... ,
utils: ...,
...
}
Additionally you can set a provider using web3.setProvider()
(e.g. WebsocketProvider):
web3.setProvider('ws://localhost:8546');
// or
web3.setProvider(new Web3.providers.WebsocketProvider('ws://localhost:8546'));
There you go, now you can use it:
web3.vns.getAccounts().then(console.log);
Usage with TypeScript
We support types within the repo itself. Please open an issue here if you find any wrong types.
You can use web3.js
as follows:
import Web3 from 'vns-web3';
const web3 = new Web3('ws://localhost:8546');
If you are using the types in a commonjs
module like for example a node app you just have to enable esModuleInterop
in your tsconfig
compile option, also enable allowSyntheticDefaultImports
for typesystem compatibility:
"compilerOptions": {
"allowSyntheticDefaultImports": true,
"esModuleInterop": true,
....
Documentation
Documentation can be found at read the docs.
Building
Requirements
sudo apt-get update
sudo apt-get install nodejs
sudo apt-get install npm
Building (gulp)
Build only the web3.js package
npm run-script build
Or build all sub packages as well:
npm run-script build-all
This will put all the browser build files into the dist
folder.
Testing (mocha)
npm test
Contributing
- All contributions have to go into 1.x, or the 2.x branch
- Please follow the code style of the other files, we use 4 spaces as tabs.