Use Elements Without the UI

If you don't want to use Elements React UI, you can still utilise the Elements Core and Hooks libraries— excluding the Elements widget—and still achieve significant advantages in terms of development time and maintenance.

Elements SDK Overview

Elements SDK contains three components:

  1. Core Library - encapsulates the core logic for data fetching and transactions.

  2. Hooks - React hooks wrapper around the Core library for more streamlined React development.

  3. Elements Widget - plug-n-play swaps widget that can be directly integrated into your dApp

Let's get started with building your own UIs with Elements Core/Hooks. The following sections are in the "guide" format. For technical documentation of individual APIs, please refer to the typedoc hosted at https://leapwallet.github.io/elements/.

We have created a simple vuejs project for IBC Only swaps using Elements Core that you can refer to here - https://github.com/leapwallet/elements-vue-example

Using without React

Start with installing the elements core package

yarn add @leapwallet/elements-core

Here's what we need to do to create a Swap UI powered by Skip

  1. Show FROM chains and tokens

  2. Show TO chains and tokens

  3. Get swap quotes

  4. Get transaction messages

  5. Sign and broadcast the transaction(s)

  6. Track the transaction(s)

For all these steps, we will use the SkipAPI class exported from the core package.

Show TO and FROM Chains and Tokens

Get Swap Quotes

Get Transaction Messages

Sign and Broadcast the Transaction(s)

Track the Transaction(s)

Using with React

Start with installing the elements hooks package (which depends on @leapwallet/elements-core package)

yarn add @leapwallet/elements-hooks

Here's what we need to do to create a Swap UI powered by Skip

  1. Show FROM chains and tokens

  2. Show TO chains and tokens

  3. Get swap quotes

  4. Get transaction messages

  5. Show swap summary

  6. Sign and broadcast the transaction(s)

  7. Track the transaction(s)

We will use SkipAPI class from the elements-core package and hooks from the elements-hooks package for this.

Show TO and FROM Chains and Tokens

Get Swap Quotes

Get Transaction Messages

Show Swap Summary

Sign and Broadcast the Transaction(s)

Track the Transaction(s)

Last updated