Show / Hide Table of Contents

DApp Integration

After developers complete the development and testing of smart contracts, they need to proceed with the front-end integration development to enable the interaction between DApp and the block chain, such as obtaining information from the Neo blockchain and invoking smart contracts deployed. In this section we will introduce the DApp integration with Neo blockchain.

As shown in the figure below, DApps can interact with the blockchain in the following ways:

  • Use NEO-SDK and send RPC requests;

  • Call the DAPI provided by the wallet plugin

structure

Basic interaction functions

The following table lists the basic functions of DApp and blockchain interaction. In addition, different SDKs and wallet plugins may provide more functions. For details, refer to the specific integration tools you use.

CategoryFunctionDescription
WalletCreate a walletCreate a new Neo wallet.
Import a walletImports an existing wallet through its wallet file, private key/wif, or NEP2 private key plus password.
Query the balanceQueries the digital assets and balance owned by a wallet through the wallet address.
Transfer assetsTransfers assets such as NEO, GAS, and Nep-5 assets to other wallets
Smart ContractInvoke a contractDApps implement the logic that needs to be deployed on the blockchain through the smart contract and execute it by invoking the contract when needed.
Information QueryBlocks informationQueries any block information
Transaction informationQueries any transaction details on the blockchain
Execution logQueries detailed execution logs and events for a certain transaction

DApp Integration tools

To fit different developers' needs and facilitate DApp development, Neo development community provides NEO-SDK for multiple languages and wallet plugins supporting DAPI.

neo-sdk

Neo-sdk provides a relatively easy and flexible way for developers to use. It packages functions such as wallet, digital asset transactions, and smart contract invoking, which can be simply used by introducing the corresponding neo-sdk into the DApp project.

SDK supports the following functions:

  • Wallet

  • Transaction

  • Contract invoking

  • Blockchain information query

Neo developer community provides the following Neo-SDK:

Wallet plugins supporting DAPI

DAPI describes a set of common interfaces for interaction between DApps and wallets. With trusted third-party wallet providers that support DAPI, users can use DApps more securely, and the unified user interface enables DApps to provide a friendly user experience. Some wallets or wallet browser plugins in the Neo ecosystem have implemented DAPI support, and users can use familiar wallet plugins in DApps.

For more information about DAPI functions, refer to dapi standard .

These wallets or wallet plugins support DAPI:

DApp Development Tools

NEO·ONE

NEO•ONE is a full end-to-end toolkit adopting TypeScript or JavaScript to develop DApps on the Neo platform. NEO•ONE offers a one-stop solution for DApp development, covering all the tool functions needed throughout the entire development cycle, including:

  • Supports JS / TS application development

  • Supports private chain, test net, and main net

  • Smart contract writing, testing, and deployment

  • Invoking smart contracts directly within the DApp through the client API

NEO·ONE provides comprehensive documentation, learning courses, and tutorials. For more information refer to NEO·ONE website .