Перейти к основному содержимому

SDK

Мгновенно перейдите в ваш предпочтительный язык, используя правую боковую панель.

Обзор

Существует несколько способов подключения к блокчейну:

  1. Поставщик данных RPC или другой API: в большинстве случаев вам нужно полагаться на его стабильность и безопасность.
  2. Подключение через ADNL вы подключаетесь к liteserver. Они могут быть недоступны, но при определенном уровне валидации (реализованном в библиотеке), не могут лгать.
  3. Бинарный файл Tonlib: вы также подключаетесь к liteserver, поэтому к нему применимы все преимущества и недостатки. Однако ваше приложение также содержит динамически загружаемую библиотеку, скомпилированную вне.
  4. Только Offchain. Эти SDK позволяют создавать и сериализовывать ячейки, которые можно передавать в API.

TypeScript / JavaScript

БиблиотекаПодключение к блокчейнуОписание
tonчерез RPC (Orbs / Toncenter / и т.д.)Удобная клиентская библиотека с обертками кошельков для разработки dApps на блокчейне TON.
tonwebчерез RPC (Orbs / Toncenter / и т.д.)TON JS SDK старого образца, с минимальным количеством внешних зависимостей, тщательно протестированный в производстве.
tonkite/adnlADNL нативно / через WebSocketTypeScript реализация ADNL.
tonutilsСобственный ADNLИнтерфейс на основе TypeScript для создания и взаимодействия с приложениями в экосистеме TON. Из-за нативной зависимости от ADNL его нельзя использовать для взаимодействия с блокчейном в браузере.
fotonчерез RPC (Orbs / Toncenter / и т.д.)Инструментарий на основе TypeScript для взаимодействия с кошельками TON и самим блокчейном в целом. Библиотека объединяет существующие решения (Blueprint и TON Connect) в один удобный API.

Java

БиблиотекаПодключение к блокчейнуОписание
ton4jДвоичные файлы TonlibJava SDK для The Open Network (TON)

Python

БиблиотекаПодключение к блокчейнуОписание
pytoniqВстроенный ADNLSDK на языке Python с нативным LiteClient и другими реализациями протоколов на основе ADNL.
pytoniq-coreтолько для offchainМощный transport-free SDK на языке Python
tonutilsчерез RPC (TONAPI / Toncenter) / Встроенный ADNL (pytoniq)Tonutils — это высокоуровневая объектно-ориентированная библиотека для Python, предназначенная для упрощения взаимодействия с блокчейном TON
pytonlibДвоичные файлы TonlibЭто автономная библиотека Python, основанная на libtonlibjson, представленная в виде бинарной зависимости от TON monorepo.
mytonlibВстроенный ADNLНативная библиотека Python SDK для работы с The Open Network
TonToolsчерез RPC (Orbs / Toncenter / и т.д.)TonTools - это высокоуровневая объектно-ориентированная библиотека для Python, которая позволяет взаимодействовать с блокчейном TON.
tonpyВстроенный ADNLPython пакет, предоставляющий структуры данных и API для взаимодействия с блокчейном TON.
tvm_valuetypesтолько для offchainбиблиотека — это набор инструментов для работы с типами TVM.
pytvmoffchainPython эмулятор TVM, использующий привязки к стандартному C++ эмулятору

C#

БиблиотекаПодключение к блокчейнуОписание
TonSdk.NETВстроенный ADNL или RPCНативный C# SDK для The Open Network.
justdmitry/TonLib.NETДвоичные файлы Tonlib.NET SDK для The Open Network, подключаемый через libtonlibjson, подключающийся через libtonlibjson, представлен в виде бинарной зависимости от TON monorepo.

Rust

БиблиотекаПодключение к блокчейнуОписание
tonlib-rsДвоичные файлы TonlibRust SDK для The Open Network, добавляющий бинарную зависимость от TON monorepo.
getgems-io/ton-grpcДвоичные файлы TonlibПривязки Rust для tonlibjson (таким образом, зависящие от двоичного файла из TON monorepo) и сервисов, построенных поверх него

Go

БиблиотекаПодключение к блокчейнуОписание
tonutils-goВстроенный ADNLБиблиотека Golang для взаимодействия с блокчейном TON
tongoВстроенный ADNLРеализация библиотек на языке Go для блокчейна TON
tonlib-goДвоичные файлы TonlibОфициальные привязки для libtonlibjson

SDK для других языков

БиблиотекаЯзыкПодключение к блокчейнуОписание
ton-kotlinKotlinВстроенный ADNLKotlin/Multiplatform SDK для The Open Network.
tonlib-javaJavaДвоичные файлы TonlibJVM оболочка для TonLib, которую можно использовать с Java/Scala/Kotlin/и т.д.
ayrat555/tonElixirтолько для offchainTON SDK для Elixir.
C++ TonlibC++Двоичные файлы TonlibОфициальные примеры по взаимодействию с умными контрактами в TON monorepo.
Java TonlibJavaДвоичные файлы TonlibОфициальные примеры по взаимодействию с умными контрактами в TON monorepo.
labraburn/SwiftyTONSwiftДвоичные файлы TonlibВстроенная оболочка Swift для tonlib с функцией async/await.
tonlib-xcframeworkSwiftДвоичные файлы TonlibПомощник сборки Tonlib для iOS, все архитектуры.
labraburn/node-tonlibNodeJSДвоичные файлы TonlibДополнение на C++ для NodeJS для работы с tonlibjson.
olifanton/tonPHPчерез RPC (Orbs / Toncenter / и т.д.)PHP SDK с набором стандартных примитивов и контрактов.