Tools & SDKs
Decision guide for picking a TRON SDK, framework, or tooling — by language, by role, and by maintenance status.
This chapter catalogs the SDKs, frameworks, and utilities most commonly used to build on TRON. Each tool has its own dedicated page in this chapter; this overview page is the decision guide. Use the tables below to pick the right one, then jump to the per-tool page for installation, quick-start code, and full reference.
Quick decision: by task
| I want to… | Use this |
|---|---|
| Build a JavaScript DApp (browser or Node.js) | TronWeb |
| Build a Java backend | Trident |
| Build a Go backend | GoTron SDK |
| Compile, deploy, and test smart contracts | TronBox |
| Write contracts in the browser | TronIDE |
| Access hosted TRON node service | TronGrid |
| Estimate staking costs and voting yield | TronStation |
| Add wallet connection to a DApp | WalletConnect TRON |
| Integrate multiple wallet providers in a DApp | TronWallet Adapter |
| Embed payment widgets in a frontend | TronWidgets |
| Integrate with Rosetta-compatible exchanges and custody systems | Rosetta API |
| Drive TRON from an AI agent (Claude, Cursor, etc.) | MCP servers on TRON |
By language
If you already have a programming-language preference, start here:
| Language | Primary SDK | Use cases | Notes |
|---|---|---|---|
| JavaScript / TypeScript | TronWeb | Browser DApps, Node.js backends, IoT | Most widely used. Similar API shape to Ethereum's web3.js, so easier for migrating Ethereum developers. |
| Java | Trident | Server-side integrations, exchange wallets, custody systems | Wraps the TRON gRPC API directly. Good fit when you already have a JVM stack. |
| Go | GoTron SDK | High-throughput backends, indexers, payment processors | Idiomatic Go wrapping the gRPC API. |
| Python | TronPy (external) | Scripting, automation, data pipelines | Community-maintained Python SDK; not covered in detail in this chapter. See https://pypi.org/project/tronpy/. |
| Rust / C# / others | (use raw HTTP / gRPC API) | When no first-class SDK exists | The Full Node HTTP API and gRPC interface are language-agnostic — you can build a TRON client in any language with a JSON/HTTP or protobuf/gRPC library. |
By role
Pick the toolset that matches your goal:
| If you are… | Start with | Then add |
|---|---|---|
| DApp developer (frontend + smart contracts) | TronWeb + TronBox | TronWallet Adapter for wallet connections; TronIDE for in-browser contract work; TronGrid for hosted node service |
| Wallet developer (building a TRON-supporting wallet) | TronWeb or Trident or GoTron SDK (by language) | WalletConnect TRON for DApp connectivity; the per-language reference for offline signing |
| Exchange / custodial wallet operator | Trident or GoTron SDK (server-side) | Rosetta API if your custody platform uses the Rosetta spec; self-hosted node, with TronGrid as a backup node service or pre-indexed query entry |
| Smart-contract developer (no frontend) | TronBox | TronIDE for iteration; TronWeb / Trident for off-chain interaction |
| Infrastructure / RPC provider | Self-hosted node (see Node operations) | TronGrid as a fallback / comparison reference |
| AI / agent builder | MCP servers on TRON | Per-server documentation linked from that page |
| TRON staking calculator / voting yield estimation | TronStation | Staking on TRON for the underlying mechanics |
Migrating from Ethereum
If you are porting from Ethereum, the rough equivalences are:
| Ethereum tool | TRON equivalent | Notes |
|---|---|---|
| web3.js / ethers.js | TronWeb | Similar API shape; most Ethereum DApp logic ports with minimal rewrites |
| Web3j (Java) | Trident | Same role, gRPC-based |
| go-ethereum (geth) client library | GoTron SDK | Functionally similar |
| Truffle / Hardhat / Foundry | TronBox | TronBox closely mirrors Truffle's workflow |
| Remix | TronIDE | Browser-based Solidity IDE |
| Infura / Alchemy | TronGrid | Hosted node service |
| MetaMask | TronLink (see TronLink integration) | Dominant browser-extension wallet |
| WalletConnect | WalletConnect TRON | TRON-specific implementation of the same protocol |
For the contract-level porting details (opcode differences, address encoding, CHAINID semantics, CREATE2 prefix), see Migrating Ethereum contracts to TRON and the protocol-level TVM vs EVM comparison.
Related resources
- API reference — underlying HTTP and gRPC interfaces every SDK wraps
- TronWeb upstream documentation — full TronWeb API reference (hosted by the project)
- Trident upstream documentation — full Trident Java API reference (hosted by the project)
- Migrating Ethereum contracts to TRON — porting walkthrough for Solidity contracts
- Integration overview — role-based map for integrators (DApp / wallet / exchange / RPC / hardware-wallet)
Updated 18 days ago