Skip to content

vechain/vechain-kit

Repository files navigation

vechain-kit

A all-in-one library for building VeChain applications.

Security Rating Maintainability Rating License: MIT

VeChain Kit Banner

Introduction

VeChain Kit is a comprehensive library designed to make building VeChain applications fast and straightforward.

It offers:

  • Seamless Wallet Integration: Support for VeWorld, Sync2, WalletConnect, VeChain Embedded Wallet, and social logins (powered by Privy).
  • Unified Ecosystem Accounts: Leverage Privy’s Ecosystem feature to give users a single wallet across multiple dApps, providing a consistent identity within the VeChain network.
  • Developer-Friendly Hooks: Easy-to-use React Hooks that let you read and write data on the VeChainThor blockchain.
  • Pre-Built UI Components: Ready-to-use components (e.g., TransactionModal) to simplify wallet operations and enhance your users’ experience.
  • Multi-Language Support: Built-in i18n for a global audience.
  • Token Operations: Send tokens, check balances, manage VET domains, and more—all in one place.

Note: Currently supports React and Next.js only

📚 For detailed documentation, visit our VeChain Kit Docs

Demo & Examples

Table of Contents

Setting up for local development

Prerequisites

  • Node.js >= 18.17
  • Yarn >= 1.22.10

You will need to have 3 terminals open:

  1. In terminal 1, run the command to install all dependencies, both in the vechain-kit and examples folders. Run this command every time you add dependencies to the project.
yarn install:all
  1. In terminal 2, enter in 'packages/vechain-kit' and run the command to keep your build in sync with the code you are developing.
yarn watch
  1. In terminal 3, enter in 'examples/sample-next-privy-app' and run the command to start the NextJS app.
yarn dev

Branching Strategy

Welcome to our project! Here's an overview of our branching strategy.

Branch Types

  • main: The main branch represents the production-ready code. Only stable and tested features should be merged into this branch. Once ready for publishing, a new tag should be created from this branch.

E2E Testing

We utilize Cucumber.js with Selenium for end-to-end (E2E) testing. To conduct these tests, you'll require the ChromeDriver. Here's how to install it:

On Mac:

brew install chromedriver
cd "$(dirname "$(which chromedriver)")"
xattr -d com.apple.quarantine chromedriver

Once installed, you can run tests in the browser using:

yarn test:e2e

Alternatively, you can run headless tests directly in the console using:

yarn test:e2e:headless

Translating

cd packages/vechain-kit
yarn translate

This will complete all the missing translations in the en.json file. In order to translate the file, you will need to create a .env inside the packages/vechain-kit folder with the OPENAI_API_KEY set to your OpenAI API key.

Publishing

  1. Prepare the release, this will check out the release branch, install dependencies, build packages, test and update the package versions
yarn prepare:release X.Y.Z

This will create a release branch called vX.Y.Z and update the package versions in the package.json files.

  1. Create the PR for the release branch vX.Y.Z.

  2. When the PR is merged, create the release on github called X.Y.Z, it will automatically tag the commit with the version X.Y.Z.

  3. Publish the release

yarn publish:release X.Y.Z

About

An all-in-one library for building VeChain applications.

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •