SDK
На этой странице перечислены различные SDK для взаимодействия с блокчейном TON, сгруппированные по языку программирования. Можете перейти сразу к вашему предпочитаемому языку с помощью правой боковой панели.
Обзор
Есть четыре главных способа подключиться к блокчейну TON:
- Поставщик данных RPC или другой API: вы полагаетесь на сторонний сервис в вопросах стабильности и безопасности. Однако, если вы запускаете собственный RPC, стабильность и безопасность оказываются полностью под вашим контролем.
- Подключение с помощью ADNL — вы подключаетесь к узлу liteserver. Можете запустить собственный лайтсервер или арендовать его для использования напрямую. Публичные лайтсерверы зачастую ненадёжны из-за ограниченных ресурсов и высокого спроса. Однако их встроенная валидация означает, что они не отправят неправильные данные.
- Tonlib в бинарном виде — подключается к лайтсерверу, так что у этого варианта те же преимущества и ограничения. Ваше приложение включает динамически загружаемую библиотеку, скомпилированную вовне. При её первом использовании требуется начальная синхронизация, которая может занять ощутимое время.
- Только офчейн — эти SDK позволяют локально создавать и сериализовывать ячейки, которые затем можно передавать в API.
TypeScript / JavaScript
Библиотека | Подключение к блокчейну | Описание |
---|---|---|
ton | RPC через Orbs, TON Center | Клиентская библиотека с обёртками кошельков для разработки dApps на блокчейне TON. |
Java
Библиотека | Подключение к блокчейну | Описание |
---|---|---|
ton4j | Tonlib в бинарном виде | Java SDK для взаимодействия в блокчейном TON. |
Python
Библиотека | Подключение к блокчейну | Описание |
---|---|---|
pytoniq | Нативный ADNL | Python SDK с нативным lite-client и другими протоколами на основе ADNL. |
tonutils | через различные HTTP indexer API (TonAPI / TON Center v3) или нативный ADNL (pytoniq) | Высокоуровневая, объектно-ориентированная библиотека для взаимодействия с блокчейном TON. |
pytonlib | Tonlib в бинарном виде | Автономная Python-библиотека, основанная на libtonlibjson . |
C#
Библиотека | Подключение к блокчейну | Описание |
---|---|---|
TonSdk.NET | Нативный ADNL или RPC | Нативный C# SDK для блокчейна TON. |
justdmitry/TonLib.NET | Tonlib в бинарном виде | .NET SDK для блокчейна TON, подключающийся через libtonlibjson . |
Rust
Библиотека | Подключение к блокчейну | Описание |
---|---|---|
tonlib-rs | Tonlib в бинарном виде | Rust SDK для TON, использующий бинарную зависимость из монорепозитория TON. |
getgems-io/ton-grpc | Tonlib в бинарном виде | Rust-привязки для libtonlibjson с дополнительными сервисами. |
Go
Библиотека | Подключение к блокчейну | Описание |
---|---|---|
tonutils-go | Нативный ADNL | Golang-библиотека для взаимодействия с блокчейном TON. |
tongo | Нативный ADNL | Go-реализация библиотек блокчейна TON. |
Другие SDK
Библиотека | Язык | Подключение к блокчейну | Описание |
---|---|---|---|
ton-kotlin | Kotlin | Нативный ADNL | Kotlin / Multiplatform SDK для TON. |
ayrat555/ton | Elixir | только офчейн | Elixir SDK для взаимодействия с TON. |
C++ Tonlib | C++ | Tonlib в бинарном виде | Официальные примеры на C++ для смарт-контрактов из монорепозитория TON. |
Java Tonlib | Java | Tonlib в бинарном виде | Официальные примеры на Java из монорепозитория TON. |
labraburn/SwiftyTON | Swift | Tonlib в бинарном виде | Нативная Swift-обёртка для tonlib с поддержкой async/await. |
tonlib-xcframework | Swift | Tonlib в бинарном виде | Помощник сборки Tonlib, поддерживающий все основные платформы Apple. |
labraburn/node-tonlib | Node.js | Tonlib в бинарном виде | C++ аддон для работы с tonlibjson с помощью Node.js. |
olifanton/ton | PHP | RPC через Orbs / TON Center | PHP SDK с примитивами TON и инструментами для смарт-контрактов. |
mytonlib | Python | Нативный ADNL | Python SDK для взаимодействия с TON. |
TonTools | Python | RPC через Orbs / TON Center | Высокоуровневая, объектно-ориентированная Python-библиотека для взаимодействия с TON. |
tonpy | Python | Нативный ADNL | Python-пакет для взаимодействия с TON. |
tvm_valuetypes | Python | только офчейн | Утилиты для взаимодействия с TVM-типами. |
pytvm | Python | офчейн | Эмулятор TVM на Python, использующий привязки C++. |
pytoniq-core | Python | только офчейн |