sui-go-guide

module
v0.0.24 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 31, 2025 License: MIT

README ยถ

GitHub Workflow Status (branch) GoDoc Coverage Status Supported Go Versions GitHub Release Go Report Card

wojack-cartoon logo

golang-SUI

create/sign SUI transaction with golang

sui-go-guide

Comprehensive Go SDK and tutorial collection to interact with the SUI blockchain.


CHINESE README

ไธญๆ–‡่ฏดๆ˜Ž

Overview

sui-go-guide is a complete Go SDK and tutorial collection enabling seamless interaction with the SUI blockchain. The package provides pure Go implementations, removing external CLI dependencies and simplifying blockchain integration.

Key Features
  • ๐Ÿš€ Pure Go Implementation - No external CLI dependencies needed
  • ๐Ÿ” Complete Wallet Management - Create, import, and manage SUI wallets
  • ๐Ÿ“ Transaction Signing - Sign transactions with Ed25519 cryptographic functions
  • ๐Ÿ”„ RPC Client - Type-safe JSON-RPC communication with SUI nodes
  • ๐Ÿ“ฆ Key Conversion - Replace sui keytool convert with pure Go code
  • ๐Ÿ“š Rich Examples - 25+ demo apps covering common use cases

Features

  • โœ… Wallet Operations

    • Generate new wallets with Ed25519 keys
    • Import existing wallets from private keys
    • Derive addresses using Blake2b-256 hashing
  • โœ… Transaction Management

    • Build and sign transactions
    • Simulate transactions before execution
    • Execute transactions on mainnet/testnet/devnet
  • โœ… Key Conversion

    • Pure Go implementation of sui keytool convert
    • Decode Base64 keystore keys
    • Encode private keys to keystore format
  • โœ… RPC Operations

    • Query coin balances and metadata
    • Retrieve transaction history
    • Call Move smart contracts
    • Get checkpoint information
  • โœ… Move Contract Interaction

    • Call Move functions with parameters
    • Query normalized Move function signatures
    • Handle type parameters and complex calls

Quick Start

package main

import (
    "context"
    "fmt"
    "github.com/go-xlan/sui-go-guide/suisecret"
    "github.com/go-xlan/sui-go-guide/suiwallet"
    "github.com/go-xlan/sui-go-guide/suiapi"
)

func main() {
    // Decode keystore key (replaces: sui keytool convert)
    keyInfo, _ := suisecret.Decode("AN81Pxp9PFqCh0SlRMTkfDOP0cSm7U/MxsJiqsWL0KF+")

    // Create wallet from decoded key
    wallet, _ := keyInfo.GetWallet()
    fmt.Println("Address:", wallet.Address())

    // Query coin balance
    coins, _ := suiapi.GetSuiCoinsInTopPage(
        context.Background(),
        "https://fullnode.mainnet.sui.io/",
        wallet.Address(),
    )
    fmt.Printf("Found %d coins\n", len(coins))
}

Installation

Install the library in your Go project:

go get github.com/go-xlan/sui-go-guide
Prerequisites

For complete functionality, install the SUI CLI (optional):

# macOS
brew install sui

# Verify installation
sui --version

Examples

The repository includes 25+ demo applications covering common use cases:

Example: Convert Keystore Key
import "github.com/go-xlan/sui-go-guide/suisecret"

// Pure Go implementation - replaces: sui keytool convert
keyInfo, err := suisecret.Decode("AAHPc6DmM3+2BWLP/CR/cLLoTtB4SN3o8Z3RNEqmUnuh")
fmt.Println("Private Key:", keyInfo.HexWithoutFlag)
fmt.Println("Scheme:", keyInfo.Scheme)
Example: Create New Wallet
import "github.com/go-xlan/sui-go-guide/suiwallet"

// Generate new wallet with random private key
wallet, err := suiwallet.NewWallet()
fmt.Println("Address:", wallet.Address())
fmt.Println("Private Key:", wallet.PrivateKeyHex())
Example: Query Coin Balance
import "github.com/go-xlan/sui-go-guide/suiapi"

coins, err := suiapi.GetSuiCoinsInTopPage(
    context.Background(),
    "https://fullnode.mainnet.sui.io/",
    "0x...", // wallet address
)

SUI CLI Setup Guide

Installing the Sui Client

Install the SUI client on macOS using Homebrew:

brew install sui

After installation, check the SUI client version:

sui --version

Ensure the version matches the one mentioned in the sui documentation, for example:

sui 1.39.3-homebrew

By default, the SUI client connects to the Mainnet. To switch to other networks, such as the Devnet or Testnet, use the commands below.


Switching Networks

To switch to the Devnet:

sui client switch --env devnet

If prompted with the following message, type y and press Enter:

Config file ["/Users/admin/.sui/sui_config/client.yaml"] doesn't exist, do you want to connect to a Sui Full node server [y/N]?

However, you may encounter an error stating the development environment configuration is missing:

Environment config not found for [Some("devnet")], add new environment config using the `sui client new-env` command.

You can skip this step and switch to the Testnet:

sui client switch --env testnet

Upon successful switching, you'll see the following output:

Active environment switched to [testnet]

Creating a Wallet Address

Generate a new wallet address with the following command:

sui client new-address ed25519

It is recommended to use the default ed25519 format for simplicity and compatibility. All examples in this guide are based on this format.

After execution, a wallet address will be created.

View the list of created wallet addresses:

sui client addresses

Sample output:

โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚ alias                โ”‚ address                                                            โ”‚ active address โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚ jovial-spinel        โ”‚ 0x207ed5c0ad36b96c730ed0f71e3c26a0ffb59bc20ab21d08067ca4c035d4d062 โ”‚                โ”‚
โ”‚ wizardly-chrysolite  โ”‚ 0x7742b9b86536011afb5f5910bf1365f967fa2d877e2b852f98f34bf8acbc8e44 โ”‚ *              โ”‚
โ”‚ elastic-amethyst     โ”‚ 0xbf21da5d7f33b51bece9c5f52771fd349fa8dfd5068ec39869b79933ff949d95 โ”‚                โ”‚
โ”‚ gracious-chrysoberyl โ”‚ 0xd544bd5d7516161c74a16a07f6c410b350f3f8e081ebe549b9f3c4451dc00570 โ”‚                โ”‚
โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ

Note: The * indicates the default wallet address.

Switch the default wallet address using this command:

sui client switch --address 0x207ed5c0ad36b96c730ed0f71e3c26a0ffb59bc20ab21d08067ca4c035d4d062

Successful switching will display:

Active address switched to 0x207ed5c0ad36b96c730ed0f71e3c26a0ffb59bc20ab21d08067ca4c035d4d062

Claiming Test Tokens

Claim test tokens (Test Coin) for your wallet:

sui client faucet --address 0x207ed5c0ad36b96c730ed0f71e3c26a0ffb59bc20ab21d08067ca4c035d4d062

Sample output:

Request successful. It can take up to 1 minute to get the coin. Run sui client gas to check your gas coins.

Note:

  • Test token requests cannot be too frequent; otherwise, you may see the following message:
Faucet service received too many requests from this IP address. Please try again after 60 minutes.
  • Network issues may cause the request to fail:
Faucet request was unsuccessful: 502 Bad Gateway

Viewing the Private Key

The private key file is stored in the following directory:

cd ~/.sui/sui_config && cat sui.keystore

Convert the [VALUE] in the file to a private key format usable by the program:

sui keytool convert [VALUE]

Sample output:

{
  "hexWithoutFlag": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
  "scheme": "ed25519"
}
  • hexWithoutFlag is the actual private key in hex format.
  • scheme represents the wallet's protocol format (ed25519 in this case).

With the hexWithoutFlag, you can perform tasks like signing transactions.


Code Examples

Code examples: internal/demos


Key Conversion Package

The suisecret package provides a pure Go implementation to convert SUI keystore keys without external dependencies:

import "github.com/go-xlan/sui-go-guide/suisecret"

keyInfo, err := suisecret.Decode(suiKey)
// Replaces: sui keytool convert

Contract Development

For Move smart contract development guide, see SUI-MOVE.md


DISCLAIMER

Crypto coin, at its core, is nothing but a scam. It thrives on the concept of "air coins"โ€”valueless digital assetsโ€”to exploit the hard-earned wealth of common people, all under the guise of innovation and advancement. This ecosystem is devoid of fairness and justice.

That cryptocurrencies like BTC, ETH, or TRX could replace global fiat currencies is nothing but a pipe dream. This notion exists as the fantasy of those from the 1980s generation who hoarded amounts of crypto coin before the public had a chance to participate.

Ask this: would someone holding thousands, or tens of thousands, of Bitcoin believe the system is fair? The answer is no. These systems were not designed with fairness in mind but to entrench the advantages of a select few.

The rise of cryptocurrencies is not the endgame. It is inevitable that new innovations will emerge, replacing these flawed systems. At this moment, interest lies in understanding the technical aspectsโ€”nothing more, nothing less.

This project exists to support technical education and exploration. The author of this project maintains a firm stance of staunch resistance to cryptocurrencies.


๐Ÿ“„ License

MIT License. See LICENSE.


๐Ÿค Contributing

Contributions are welcome! Report bugs, suggest features, and contribute code:

  • ๐Ÿ› Found a mistake? Open an issue on GitHub with reproduction steps
  • ๐Ÿ’ก Have a feature idea? Create an issue to discuss the suggestion
  • ๐Ÿ“– Documentation confusing? Report it so we can improve
  • ๐Ÿš€ Need new features? Share the use cases to help us understand requirements
  • โšก Performance issue? Help us optimize through reporting slow operations
  • ๐Ÿ”ง Configuration problem? Ask questions about complex setups
  • ๐Ÿ“ข Follow project progress? Watch the repo to get new releases and features
  • ๐ŸŒŸ Success stories? Share how this package improved the workflow
  • ๐Ÿ’ฌ Feedback? We welcome suggestions and comments

๐Ÿ”ง Development

New code contributions, follow this process:

  1. Fork: Fork the repo on GitHub (using the webpage UI).
  2. Clone: Clone the forked project (git clone https://github.com/yourname/repo-name.git).
  3. Navigate: Navigate to the cloned project (cd repo-name)
  4. Branch: Create a feature branch (git checkout -b feature/xxx).
  5. Code: Implement the changes with comprehensive tests
  6. Testing: (Golang project) Ensure tests pass (go test ./...) and follow Go code style conventions
  7. Documentation: Update documentation to support client-facing changes and use significant commit messages
  8. Stage: Stage changes (git add .)
  9. Commit: Commit changes (git commit -m "Add feature xxx") ensuring backward compatible code
  10. Push: Push to the branch (git push origin feature/xxx).
  11. PR: Open a merge request on GitHub (on the GitHub webpage) with detailed description.

Please ensure tests pass and include relevant documentation updates.


๐ŸŒŸ Support

Welcome to contribute to this project via submitting merge requests and reporting issues.

Project Support:

  • โญ Give GitHub stars if this project helps you
  • ๐Ÿค Share with teammates and (golang) programming friends
  • ๐Ÿ“ Write tech blogs about development tools and workflows - we provide content writing support
  • ๐ŸŒŸ Join the ecosystem - committed to supporting open source and the (golang) development scene

Have Fun Coding with this package! ๐ŸŽ‰๐ŸŽ‰๐ŸŽ‰


GitHub Stars

Stargazers

Directories ยถ

Path Synopsis
cmd
sui-go command
Package main: Command-line interface to create and manage SUI blockchain wallets Provides wallet generation with random private key creation Displays wallet information including public key and address Built on cobra CLI framework with colorized terminal output
Package main: Command-line interface to create and manage SUI blockchain wallets Provides wallet generation with random private key creation Displays wallet information including public key and address Built on cobra CLI framework with colorized terminal output
internal
demos/main_sui_getChainIdentifier command
Package main: Demo application to retrieve blockchain chain identifier Demonstrates sui_getChainIdentifier RPC method with devnet Shows how to query network chain ID information Prints chain identifier to verify network connection
Package main: Demo application to retrieve blockchain chain identifier Demonstrates sui_getChainIdentifier RPC method with devnet Shows how to query network chain ID information Prints chain identifier to verify network connection
demos/main_sui_getCheckpoint command
Package main: Demo application to retrieve checkpoint information from blockchain Demonstrates sui_getCheckpoint RPC method with sequence number query Shows how to get latest checkpoint number and query checkpoint details Prints checkpoint data in JSON format from devnet
Package main: Demo application to retrieve checkpoint information from blockchain Demonstrates sui_getCheckpoint RPC method with sequence number query Shows how to get latest checkpoint number and query checkpoint details Prints checkpoint data in JSON format from devnet
demos/main_sui_getLatestCheckpointSequenceNumber command
Package main: Demo application to query latest checkpoint sequence number Demonstrates sui_getLatestCheckpointSequenceNumber RPC method Shows how to retrieve current checkpoint number from blockchain Prints checkpoint sequence in JSON format from devnet
Package main: Demo application to query latest checkpoint sequence number Demonstrates sui_getLatestCheckpointSequenceNumber RPC method Shows how to retrieve current checkpoint number from blockchain Prints checkpoint sequence in JSON format from devnet
demos/main_sui_getTotalTransactionBlocks command
Package main: Demo application to query total transaction count from blockchain Demonstrates sui_getTotalTransactionBlocks RPC method on mainnet Shows how to retrieve cumulative transaction block count Logs total transaction number from network
Package main: Demo application to query total transaction count from blockchain Demonstrates sui_getTotalTransactionBlocks RPC method on mainnet Shows how to retrieve cumulative transaction block count Logs total transaction number from network
demos/main_sui_getTransactionBlock command
Package main: Demo application to query individual transaction block details Demonstrates sui_getTransactionBlock RPC method with checkpoint navigation Shows how to retrieve latest checkpoint and iterate through transactions Logs transaction digests and detailed information from devnet
Package main: Demo application to query individual transaction block details Demonstrates sui_getTransactionBlock RPC method with checkpoint navigation Shows how to retrieve latest checkpoint and iterate through transactions Logs transaction digests and detailed information from devnet
demos/main_sui_multiGetTransactionBlocks command
Package main: Demo application to query multiple transaction blocks in batch Demonstrates sui_multiGetTransactionBlocks RPC method with batch query Shows how to retrieve multiple transactions from checkpoint efficiently Logs transaction digests and processes results in batch from devnet
Package main: Demo application to query multiple transaction blocks in batch Demonstrates sui_multiGetTransactionBlocks RPC method with batch query Shows how to retrieve multiple transactions from checkpoint efficiently Logs transaction digests and processes results in batch from devnet
demos/main_sui_unsafe_mergeCoins command
Package main: Demo application to merge two SUI coin objects into one Demonstrates unsafe_mergeCoins RPC method with coin selection Shows complete workflow from coin query to merge execution Includes random coin selection and transaction signing
Package main: Demo application to merge two SUI coin objects into one Demonstrates unsafe_mergeCoins RPC method with coin selection Shows complete workflow from coin query to merge execution Includes random coin selection and transaction signing
demos/main_sui_unsafe_payAllSui command
Package main: Demo application to send all SUI tokens from multiple coins to recipient Demonstrates unsafe_payAllSui RPC method with coin consolidation Shows how to transfer entire balance from multiple coins in one transaction Includes transaction simulation and coin query
Package main: Demo application to send all SUI tokens from multiple coins to recipient Demonstrates unsafe_payAllSui RPC method with coin consolidation Shows how to transfer entire balance from multiple coins in one transaction Includes transaction simulation and coin query
demos/main_sui_unsafe_paySui command
Package main: Demo application to send SUI tokens to multiple recipients Demonstrates unsafe_paySui RPC method with batch payment Shows how to transfer different amounts to multiple addresses at once Includes multiple input coins and recipient management
Package main: Demo application to send SUI tokens to multiple recipients Demonstrates unsafe_paySui RPC method with batch payment Shows how to transfer different amounts to multiple addresses at once Includes multiple input coins and recipient management
demos/main_sui_unsafe_paySui_to_me_as_gas command
Package main: Demo application to send SUI tokens back to sender using gas Demonstrates unsafe_paySui method with self-transfer and gas usage Shows how to transfer tokens to own address while paying gas fees Includes transaction simulation, signing, and execution on testnet
Package main: Demo application to send SUI tokens back to sender using gas Demonstrates unsafe_paySui method with self-transfer and gas usage Shows how to transfer tokens to own address while paying gas fees Includes transaction simulation, signing, and execution on testnet
demos/main_sui_unsafe_splitCoin command
Package main: Demo application to split one SUI coin into multiple coins with custom amounts Demonstrates unsafe_splitCoin RPC method with amount calculation Shows how to divide coin balance into three parts and execute split Includes coin selection, amount calculation, and transaction execution
Package main: Demo application to split one SUI coin into multiple coins with custom amounts Demonstrates unsafe_splitCoin RPC method with amount calculation Shows how to divide coin balance into three parts and execute split Includes coin selection, amount calculation, and transaction execution
demos/main_sui_unsafe_splitCoinEqual command
Package main: Demo application to split one SUI coin into equal amounts Demonstrates unsafe_splitCoinEqual RPC method with count-based split Shows how to divide coin balance into equal parts automatically Includes coin selection and equal distribution transaction execution
Package main: Demo application to split one SUI coin into equal amounts Demonstrates unsafe_splitCoinEqual RPC method with count-based split Shows how to divide coin balance into equal parts automatically Includes coin selection and equal distribution transaction execution
demos/main_sui_unsafe_transferObject command
Package main: Demo application to transfer object ownership to another address Demonstrates unsafe_transferObject RPC method with object transfer Shows how to change ownership of blockchain objects Includes debug mode and transaction simulation
Package main: Demo application to transfer object ownership to another address Demonstrates unsafe_transferObject RPC method with object transfer Shows how to change ownership of blockchain objects Includes debug mode and transaction simulation
demos/main_sui_unsafe_transferSui command
Package main: Demo application to transfer SUI tokens between addresses Demonstrates complete transaction workflow from build to execution Shows unsafe_transferSui method usage with testnet Includes transaction simulation, signing, and execution steps
Package main: Demo application to transfer SUI tokens between addresses Demonstrates complete transaction workflow from build to execution Shows unsafe_transferSui method usage with testnet Includes transaction simulation, signing, and execution steps
demos/main_suix_getAllBalances command
Package main: Demo application to query all coin types and balances owned by address Demonstrates suix_getAllBalances RPC method on mainnet Shows how to retrieve balance summary across different coin types Uses structured logging to display coin types and total balances
Package main: Demo application to query all coin types and balances owned by address Demonstrates suix_getAllBalances RPC method on mainnet Shows how to retrieve balance summary across different coin types Uses structured logging to display coin types and total balances
demos/main_suix_getAllCoins command
Package main: Demo application to query all coin objects across all types owned by address Demonstrates suix_getAllCoins RPC method on mainnet Shows how to retrieve complete coin list regardless of coin type Uses structured logging to display balance and type information
Package main: Demo application to query all coin objects across all types owned by address Demonstrates suix_getAllCoins RPC method on mainnet Shows how to retrieve complete coin list regardless of coin type Uses structured logging to display balance and type information
demos/main_suix_getBalance command
Package main: Demo application to query coin balance with logging Demonstrates suix_getCoins RPC method on testnet Shows how to iterate through coin objects and log details Uses structured logging to display balance and coin type
Package main: Demo application to query coin balance with logging Demonstrates suix_getCoins RPC method on testnet Shows how to iterate through coin objects and log details Uses structured logging to display balance and coin type
demos/main_suix_getCoinMetadata command
Package main: Demo application to query coin metadata from blockchain Demonstrates suix_getCoinMetadata RPC method with multiple coin types Shows how to retrieve display information like name, symbol, and decimals Queries metadata from mainnet and logs results in JSON format
Package main: Demo application to query coin metadata from blockchain Demonstrates suix_getCoinMetadata RPC method with multiple coin types Shows how to retrieve display information like name, symbol, and decimals Queries metadata from mainnet and logs results in JSON format
demos/main_suix_getCoins command
Package main: Demo application to query coin objects owned by an address Demonstrates suix_getCoins RPC method usage with mainnet Shows how to retrieve paginated coin data from blockchain Prints coin information including balance and object IDs
Package main: Demo application to query coin objects owned by an address Demonstrates suix_getCoins RPC method usage with mainnet Shows how to retrieve paginated coin data from blockchain Prints coin information including balance and object IDs
demos/main_suix_getCoins_suicoin command
Package main: Demo application to query SUI coin objects owned by address on testnet Demonstrates suix_getCoins RPC method with coin type parameter Shows how to filter coins by type to get native SUI tokens Prints coin information in JSON format
Package main: Demo application to query SUI coin objects owned by address on testnet Demonstrates suix_getCoins RPC method with coin type parameter Shows how to filter coins by type to get native SUI tokens Prints coin information in JSON format
demos/main_suix_getTotalSupply command
Package main: Demo application to query total supply of different coin types Demonstrates suix_getTotalSupply RPC method on mainnet Shows how to retrieve maximum supply information from coin metadata Queries multiple coin types and logs their supply values
Package main: Demo application to query total supply of different coin types Demonstrates suix_getTotalSupply RPC method on mainnet Shows how to retrieve maximum supply information from coin metadata Queries multiple coin types and logs their supply values
moves/main_sui_getNormalizedMoveFunction command
Package main: Demo application to query Move function metadata from blockchain Demonstrates sui_getNormalizedMoveFunction RPC method with contract introspection Shows how to retrieve function signature and parameter information Prints function metadata in JSON format from testnet
Package main: Demo application to query Move function metadata from blockchain Demonstrates sui_getNormalizedMoveFunction RPC method with contract introspection Shows how to retrieve function signature and parameter information Prints function metadata in JSON format from testnet
moves/main_sui_unsafe_moveCall_math_add command
Package main: Demo application to call Move smart contract math add function Demonstrates unsafe_moveCall RPC method with contract interaction Shows how to invoke Move module function with parameters on testnet Includes transaction simulation, signing, and execution with result logging
Package main: Demo application to call Move smart contract math add function Demonstrates unsafe_moveCall RPC method with contract interaction Shows how to invoke Move module function with parameters on testnet Includes transaction simulation, signing, and execution with result logging
moves/main_sui_unsafe_moveCall_math_max command
Package main: Demo application to call Move smart contract math max function Demonstrates unsafe_moveCall RPC method with mainnet contract Shows how to invoke Move module function to find maximum value Includes transaction simulation with debug mode enabled
Package main: Demo application to call Move smart contract math max function Demonstrates unsafe_moveCall RPC method with mainnet contract Shows how to invoke Move module function to find maximum value Includes transaction simulation with debug mode enabled
Package suiapi: High-level API wrappers with SUI blockchain RPC methods Provides convenient functions to interact with SUI blockchain nodes Supports transaction execution, simulation, and coin balance queries Built on generic RPC client with type-safe response handling
Package suiapi: High-level API wrappers with SUI blockchain RPC methods Provides convenient functions to interact with SUI blockchain nodes Supports transaction execution, simulation, and coin balance queries Built on generic RPC client with type-safe response handling
Package suirpc: RPC client implementation with HTTP transport and debug capabilities Provides generic RPC request sending with automatic JSON marshaling and response handling Supports client configuration, timeout settings, and debug mode logging Built on resty HTTP client with connection pooling and retry mechanisms
Package suirpc: RPC client implementation with HTTP transport and debug capabilities Provides generic RPC request sending with automatic JSON marshaling and response handling Supports client configuration, timeout settings, and debug mode logging Built on resty HTTP client with connection pooling and retry mechanisms
Package suisecret: Pure Go implementation to decode and encode SUI keystore keys Provides direct replacement of third-party sui keytool convert command Supports ed25519 signature scheme with Base64 and hex format conversion Enables seamless wallet creation from decoded private keys
Package suisecret: Pure Go implementation to decode and encode SUI keystore keys Provides direct replacement of third-party sui keytool convert command Supports ed25519 signature scheme with Base64 and hex format conversion Enables seamless wallet creation from decoded private keys
Package suisigntx: Transaction signing implementation with Ed25519 cryptographic operations Provides functions to sign SUI blockchain transaction data using private keys Supports both hex-encoded and raw byte format private keys and transaction data Generates Base64-encoded signatures compatible with SUI blockchain requirements
Package suisigntx: Transaction signing implementation with Ed25519 cryptographic operations Provides functions to sign SUI blockchain transaction data using private keys Supports both hex-encoded and raw byte format private keys and transaction data Generates Base64-encoded signatures compatible with SUI blockchain requirements
Package suiwallet: Ed25519-based wallet implementation with SUI blockchain address generation Provides wallet creation, signing, and verification operations using Ed25519 cryptography Generates blockchain addresses through Blake2b-256 hashing with scheme prefix Compatible with SUI blockchain wallet requirements and key management
Package suiwallet: Ed25519-based wallet implementation with SUI blockchain address generation Provides wallet creation, signing, and verification operations using Ed25519 cryptography Generates blockchain addresses through Blake2b-256 hashing with scheme prefix Compatible with SUI blockchain wallet requirements and key management

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL