Skip to content
forked from vechain/connex

The standard interface to connect DApp with VeChain and user

License

Notifications You must be signed in to change notification settings

Artimunor/connex

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

82 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Connex Gitter

npm version

Introduction

Connex is the standard interface to connect VeChain apps with VeChain blockchain and user. Connex is a set of well-designed APIs for developers, with injected Connex Object in web applications they can easily build decentralized applications.

Get Started

Sync or other compatible clients will expose connex API by an injected object on Window Object.

VeChain App Bootstrapping

VeChain apps are usually web apps. On app load, you always need to detect Connex component. If Connex is not available, you may instruct people to setup Connex environment.

To simplify these steps, simply perform redirection:

if(!window.connex) {
    location.href = 'https://env.vechain.org/r/#' + encodeURIComponent(location.href)
}

Additionally, network can be specified:

if(!window.connex) {
    // the app prefers running on test net
    location.href = 'https://env.vechain.org/r/#/test/' + encodeURIComponent(location.href)
}

Install

TypeScript(Recommended)

npm install @vechain/connex --save-dev

Add @vechain/connex to compilerOptions.types in tsconfig.json then you are good to go!

Vanilla JS

No need to set up, just code in your favourite way.

Usage

const el = document.createElement('h1')

const status = connex.thor.status
el.innerText = 'You are \'connexed\' to vechain, the status is ' + (status.progress === 1 ? 'synced': 'syncing')

document.querySelector('body').append(el)

Developers

Resource

Architecture explained

Connex Architecture

Compatible clients

FAQ

Angular does not find Connex

I am using angular, have done all of the above and my IDE recognizes the Connex namespace however when I run or compile, i get the errors Cannot find namespace 'Connex' and / or Property 'connex' does not exist on type 'Window'. What is going wrong?
You are probably using a larger project with multiple project roots, just adding @vechain/connex to the root config is not enough in this case. You also have to find all tsconfig.app.ts and tsconfig.spec.ts files in your subprojects. While these inherrit from the main tsconfig.json you have to make sure it does not override the types with for example "types": [] and that there is no confict with typesRoots

License

Connex is licensed under the GNU Lesser General Public License v3.0, also included in LICENSE file in the repository.

About

The standard interface to connect DApp with VeChain and user

Resources

License

Stars

Watchers

Forks

Packages

No packages published