tonkeeper / tongo

Go primitives to work with TON
MIT License
214 stars 45 forks source link
adnl ton tonlib tvm

tongo


Go implementation of libraries for TON blockchain.

Library structure

  1. ADNL - low level adnl protocol implementation
  2. Lite client - interaction with TON node as lite client
  3. BOC - cells and bag-of-cells methods and primitives
  4. TL - interaction with binary data described by TL (Type Language) schemas
  5. TLB - interaction with binary data (in Cells) described by TL-B (Typed Language - Binary) schemas
  6. TVM - interaction with TVM (TON Virtual Machine)
  7. Wallet - tools to simplify the deployment and interaction with the wallet smart contract
  8. Contract - tools to simplify the interaction with the smart contracts like Jettons and NFT
  9. Examples

Dependencies

Libraries

For TVM executor you need a libraries from lib/darwin (MAC) or lib/linux

Connection to TON node

For connect to TON node you need to know public key and ip:port. In most cases you can use public config files. Download global-config.json (mainnet) or testnet-global.config.json (testnet) file from ton.org Lite client supports auto-download mainnet config from ton.org.

Package installation

go get github.com/tonkeeper/tongo

Basic types

Tongo operates with TON blockchain structures described in block.tlb and some types described in lite_api.tl. Go definitions of these types you can find in files: ton/account.go, ton/transactions.go, ton/models.go ...

Chat

You can join to our chat in telegram - https://t.me/tongo_lib

Don't be afraid if you see only russians - we welcome any english speakers too.