Java libraries for interacting with TON blockchain. Do not forget to place tonlibjson library to your project. Latest Tonlib libraries can be found here.
<dependency>
<groupId>io.github.neodix42</groupId>
<artifactId>smartcontract</artifactId>
<version>0.4.8</version>
</dependency>
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
<dependency>
<groupId>io.github.neodix42</groupId>
<artifactId>ton4j</artifactId>
<version>0.4.8</version>
</dependency>
You can use each submodule individually. Click the module below to get more details.
- Tonlib - use external Tonlib shared library to communicate with TON blockchain.
- SmartContract - create and deploy custom and predefined smart-contracts.
- Cell - create, read and manipulate Bag of Cells.
- BitString - construct bit-strings.
- Address - create and parse TON wallet addresses.
- Mnemonic - helpful methods for generating deterministic keys for TON blockchain.
- Emulator - wrapper for using with external precompiled emulator shared library.
- Liteclient - wrapper for using with external precompiled lite-client binary.
- Utils - create private and public keys, convert data, etc.
- ✅ BitString manipulations
- ✅ Cells serialization / deserialization
- ✅ TL-B serialization / deserialization
- ✅ Cell builder and cell slicer (reader)
- ✅ Tonlib wrapper
- ✅ Lite-client wrapper
- ✅ Support num, cell and slice as arguments for runMethod
- ✅ Render List, Tuple, Slice, Cell and Number results from runMethod
- ✅ Generate or import private key, sign, encrypt and decrypt using Tonlib
- ✅ Encrypt/decrypt with mnemonic
- ✅ Send external message
- ✅ Get block transactions
- ✅ Deploy contracts and send external messages using Tonlib
- ✅ Wallets - Simple (V1), V2, V3, V4 (plugins), Lockup, Highload/Highload-V3, DNS, Jetton, StableCoin, NFT, Payment-channels, Multisig V1
- ✅ HashMap, HashMapE, PfxHashMap, PfxHashMapE, HashMapAug, HashMapAugE serialization / deserialization
- Support tuple and list as arguments for runMethod
- Improve code coverage and add more integration tests
- BinTree serialization / deserialization
If you want to speed up ton4j development and thus change its priority in my backlog, you are welcome to donate some toncoins:
UQBguBMWc_wUA8pJjC-A9JbTJFzb7lbFbbkiFYajA33-U9YU