10分钟Solana-性能web3-4.1 Solana 相关SDK

16 阅读3分钟

欢迎订阅专栏10分钟Solana-性能web3

Solana 拥有一个庞大且多样的 SDK 生态系统,覆盖了从主流到小众的多种编程语言。这些 SDK 主要分为由 Anza 维护的官方 SDK 和由社区贡献的社区 SDK

📚 官方 SDK

这些是 Solana 官方推荐和构建的 SDK,提供了最核心、最稳定的功能。

语言/平台SDK 名称描述链接
TypeScript (推荐)@solana/kit官方推荐的 TypeScript SDK,用于构建 Node.js、Web 和 React Native 应用。它是模块化的,支持按需加载。GitHub, npm
TypeScript (客户端)@solana/client一个轻量级的 Solana 客户端运行时,集成了 RPC、钱包、交易和订阅等功能。GitHub, npm
TypeScript (React)@solana/react为 React 应用提供的 Hooks,用于管理钱包、余额和交易等。GitHub, npm
TypeScript (旧版)@solana/web3.jsSolana 的旧版 TypeScript SDK,目前由社区维护。GitHub
Rust (客户端)solana_sdk用于在 Rust 中编写客户端应用程序。需要注意的是,此 SDK 在 v3 版本中进行了模块化重构。GitHub, Crate
Rust (链上程序)solana_program用于编写 Solana 链上程序(智能合约)的 Rust SDK。GitHub
Pythonsolana-pyPython 的基础库,功能类似于 solana-web3.js,用于构建交易和与 JSON RPC API 交互。PyPI

🌐 社区 SDK

除了官方 SDK,Solana 强大的社区也为各种语言和平台贡献了丰富的 SDK。以下是一些主要语言的社区 SDK:

  • Python

    • solders:一个高性能的 Python 工具包,由 Rust 编写,提供核心 SDK 功能。
    • solathon:一个高性能、易用且功能丰富的 Python SDK。
  • Go

    • solana-go:功能全面的 Go 语言 SDK,支持完整的 JSON RPC 和 WebSocket 接口。可使用 anchor-go 为 Anchor 程序生成客户端。
    • debot-solana-go-sdk:另一个社区 Go SDK。
    • 其他:还有针对特定协议(如 Meteora、Pump)的 Go SDK。
  • Java / Kotlin

    • sol4k:一个 Kotlin 客户端,可在 Java 或其他 JVM 语言以及 Android 上使用。
    • sava:另一个 Solana Java SDK。
    • solanaj:一个轻量级的 Java 区块链客户端。
  • C++

    • solcpp:一个用于与 Solana 和 Mango Markets 交互的 C++ SDK。
    • solana-cpp-sdk:一个用于链上程序的仅头文件(header-only)C++ SDK。
    • SolanaRpcClient:一个基于 Boost.Beast 的 RPC 客户端实现。

    注意:Solana 也支持使用 C 和 C++ 编写链上程序。

  • .NET (C#)

    • Solnet:Solana 的 .NET SDK,可集成到 Web 或桌面应用中。

🎮 游戏开发 SDK

Solana 的低费用和高速特性使其成为游戏开发的热门选择,社区为此提供了丰富的游戏引擎 SDK。

游戏引擎SDK / 维护者主要功能
UnityMagicblockNFT 支持、Candy Machine 集成、交易、RPC、Phantom 深度链接、WebGL 连接器、移动钱包适配器、会话密钥、Anchor 客户端代码生成。
GodotZenRepublic 和 Virus-Axel钱包适配器集成、交易、RPC 功能、Anchor 客户端代码生成、Metaplex Candy Machine 集成。
Unreal EngineVarmeta, Bitfrost, Thugz 等集成 Solana 区块链功能、管理钱包、执行交易、铸造 Metaplex NFT 等。
Rust 引擎Turbo.Computer一个用 Rust 编写的轻量级游戏引擎,专注于 Solana,并提供完整的 RPC 支持。
通用框架Honeycomb 协议提供链上程序和状态压缩工具,处理游戏生命周期功能,如质押、任务、战利品箱、玩家档案等。

🛠️ 其他重要工具与库

  • @solana/keychain:一个统一的签名接口,支持 Vault、Privy、AWS KMS、Fireblocks 等多种密钥管理服务。
  • @solana-program/*:一系列与 Solana 原生程序(如 Token、Memo、Compute Budget)交互的官方 JavaScript 客户端。
  • solita:一个工具,可以从 Anchor 或 Shank 提取的 IDL 生成低级别的 TypeScript SDK。

以上是主流的 SDK,Solana 生态还有面向特定协议(如支付、AI 代理)的 SDK,可以根据具体需求进一步探索。

如果想了解某个特定 SDK 的更多细节,可以随时再问我。