Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Главная

telegram-webapp-sdk — это типобезопасная и эргономичная обёртка на Rust/WASM над JavaScript API Telegram Web Apps. Она позволяет писать Telegram Mini Apps полностью на Rust: на чистом WebAssembly или через готовые интеграции с Yew и Leptos.

Покрытие API

Крейт отслеживает версию Telegram WebApp API 9.6 — это последняя версия Mini App, доступная в telegram-web-app.js. Bot API с тех пор дошёл до 10.1, но версии с 9.7 по 10.1 не добавили новых методов, полей или событий WebApp, поэтому покрытие полное. Bot API 9.5 добавил icon_custom_emoji_id для нижних кнопок; 9.6 добавил WebApp.requestChat и события requestedChatSent / requestedChatFailed — всё реализовано.

Покрытая поверхность включает:

  • Кнопки: Main, Secondary, Back и Settings
  • Диалоги: alert, confirm, popup и сканер QR-кодов
  • Навигацию, ссылки, шеринг и инвойсы
  • Тему, цвета, вьюпорт и safe-area отступы
  • Хранилища: CloudStorage, DeviceStorage и SecureStorage
  • Сенсоры: акселерометр, гироскоп, ориентацию устройства и LocationManager
  • Биометрическую аутентификацию и тактильную отдачу

Полный чек-лист по методам — в файле WEBAPP_API.md.

Флаги фич

По умолчанию фичи не включены (default = []) — подключайте только нужное.

ФичаЧто включает
macrostelegram_app!, telegram_page! и telegram_router! для приложений и роутинга без бойлерплейта
yewuse_telegram_context, реактивные хуки use_viewport / use_theme / use_safe_area и компоненты BottomButton / BackButton / SettingsButton
leptosprovide_telegram_context, те же реактивные хуки use_* и аналогичные компоненты для Leptos
mockНастраиваемый мок Telegram.WebApp для локальной разработки и тестов
fullОбъединяет macros, yew, leptos и mock
telegram-webapp-sdk = { version = "0.11", features = ["leptos", "mock"] }

Оглавление документации

Лицензия

telegram-webapp-sdk распространяется под лицензией MIT.