Skip to content

Multi-chain Rust wallet sdk, supports Bitcoin, Ethereum, Tron, Filecoin, etc. https://cregisoffical.gitbook.io/anychain/

License

Notifications You must be signed in to change notification settings

0xcregis/anychain

 
 

Repository files navigation

Anychain

Rust CI

What is Anychain?

Anychain is a multi-chain supported blockchain development framework designed to simplify interactions with various blockchains such as Ethereum, Bitcoin, Tron, and more. It provides a suite of tools and libraries that enable developers to easily create, manage, and operate blockchain addresses, transactions, and smart contracts.

What Can Anychain Do?

  • Multi-Chain Support: Interact with multiple blockchain platforms, allowing developers to use different blockchains within the same project.
  • Address Management: Easily create and verify blockchain addresses.
  • Transaction Generation: Generate and sign transactions, supporting various cryptocurrencies.
  • Smart Contract Interaction: Interact with smart contracts, call contract methods, and handle return values.
  • Bandwidth Estimation: Estimate the bandwidth required for transactions, helping developers optimize transaction costs.

Who Needs Anychain?

  • Blockchain Developers: Developers looking to quickly build applications that interact with multiple blockchains.
  • Fintech Companies: Companies that need to integrate various cryptocurrency payment and transaction functionalities.
  • Blockchain Researchers: Academics and researchers who want to experiment and study different blockchains.
  • Startups: Startups aiming to leverage blockchain technology to build innovative products.

Why Choose Anychain?

  • Ease of Use: Anychain offers a simple and intuitive API, allowing developers to get started quickly and reducing the learning curve.
  • Flexibility: Supports multiple blockchains, enabling developers to choose the most suitable chain based on their needs.
  • Active Community: Anychain has an active developer community that provides support and shares best practices.
  • High Performance: An optimized codebase ensures efficient transaction processing and low latency.

Features

Common Traits when it comes to building transactions for different blockchains, they are

  • PublicKey
  • Address
  • Amount
  • Transaction
  • Network
  • Format

Common crates used in building transactions for different blockchains, they are

  • base58
  • secp256k1
  • hex
  • rand

Functions

  • Build raw unsigned transactions for different blockchains according to parameters taken from the user of this library

  • Build signed transactions for different blockchains by merging the raw transaction and the corresponding signature taken from the user of this library

Architecture & Design Doc

flowchart LR
    A[iOS/Android App] --> |Link library| B[anychain-ffi-rust];
    B --> |Wrap| C[anychain-bitcoin C library];
    C --> |Implement| D[anychain-core];
Loading

Design Principles for AnyChain Wallet SDK

Build the source

cargo build --release

Crates

Name Description Crates.io Documentation
anychain-core Core types and traits. Crates.io Documentation
anychain-kms BIP32、BIP39. Crates.io Documentation
anychain-bitcoin Bitcoin impl. Crates.io Documentation
anychain-ethereum Ethereum impl. Crates.io Documentation
anychain-filecoin Filecoin impl. Crates.io Documentation
anychain-tron Tron impl. Crates.io Documentation
anychain-ripple Ripple impl. Crates.io Documentation
anychain-polkadot Polkadot impl. Crates.io Documentation
anychain-solana Solana impl. Crates.io Documentation
anychain-ton Ton impl. Crates.io Documentation

Supported Chains

  • Bitcoin
  • BitcoinCash
  • Dogecoin
  • Litecoin
  • Ethereum
  • Filecoin
  • Tron
  • Ripple
  • Arbitrum, Optimism, and Avalanche
  • Polkadot
  • Neo
  • Solana
  • Sui
  • Aptos
  • Sei
  • Ton

License

This project is licensed under the MIT license.

Contact

Feel free to join anychain sdk Telegram for discussions on code and research.