Skip to main content
There are several ways to interact with TON blockchain:
  • HTTP libraries connect through HTTP JSON APIs to read and write to blockchain. HTTP servers mostly just relay these requests to ADNL network.
  • ADNL libraries connect to liteserver.
Here’s a small comparison for these protocols:
HTTPADNL
StandardizedNoYes
Can connect from a web pageYesNo
Has free third-party serversYesYes
Can be self-hostedYesYes
Requires trusting third partiesYes1No
First connection takes time for data synchronizationNoYes2
1 Some HTTP servers do provide proofs, but there is no out‑of‑the‑box library that verifies them. 2 If proofs returned by liteservers are ignored, the first connection skips data synchronization; however, this requires trusting the liteserver. SDKs might also provide some other functionality:
  • Core libraries implement standard TON data structures (cell, slice), formats (address, mnemonic), cryptography etc.
  • Wrappers provide high-level APIs for interacting with standard contracts (Wallet, Jetton, NFT).
  • Emulator libraries provide an execution environment similar to real blockchain for testing purposes.
HTTPADNLCoreWrappersEmulatorLanguage
@ton/tonTypeScriptCodeChat
@ton/coreTypeScriptCodeDocs
@ton/sandboxTypeScriptCode
ton4jJavaCodeChat
tonutils-goGoCodeChat
adnlTypeScriptCode
tonutilsTypeScriptCode
tonlib-javaJavaCode
tonutilsPythonCodeDocsChat
tonlibC++CodeDocs
ton-kotlinKotlinCodeDocs
pytonlibPythonCode
pytoniqPythonCodeDocsChat
pytoniq-corePythonCodeDocsChat
mytonlibPythonCode
tonpyPythonCodeDocs
tvm_valuetypesPythonCode
pytvmPythonCode
tonlib-goGoCode
tongoGoCode
tonPHPCode
interopPHPCode
tonlib-rsRustCode
ton-grpcRustCode
tonsdk.netC#CodeChat
tonlib.netC#Code
tonElixirCode
tonwebJavaScriptCode
node-tonlibJavaScriptCode
tontoolsPythonCode
swiftytonSwiftCode
tonlib-xcframeworkSwiftCode
I