TON DocsTON Docs
AppKit

AppKit overview

AppKit is an open-source SDK for integrating TON into React and JavaScript/TypeScript decentralized applications and Telegram Mini Apps.

With AppKit, you have a single place to configure networks, wallet connectors, DeFi providers, and React integration around GRAM wallet operations. It also includes an out-of-the-box UI with sub-second updates.

Use AppKit to do the following:

  • Connect a GRAM wallet
  • Send Gram and jettons, work with NFTs
  • Request swap, staking, or signing operations
  • Read wallet data and asset balances

An application built with AppKit can interact with your own smart contract. To create a contract, use Acton and explore primitives, such as Messages & transactions and others.

How it works

This is how AppKit fits into the TON ecosystem:

  • AppKit prepares requests, tracks application state, and bridges the application interface to wallets and providers.
  • Wallets sign transactions and data.
  • Backends verify orders, signatures, and business rules.

AppKit is the user-facing layer of the connection between applications and wallets. Its wallet-side counterpart is WalletKit — an SDK integrating wallet services with TON.

AppKit builds on top of the following components:

AppKit integrates with DeFi protocols through providers.

Section overview

GoalRead
Add AppKit to a new appGet started guides
Understand the moving partsHow-to guides
Look up functions and typesReference
Diagnose common issuesFAQ and troubleshooting
Check upgrade notesChangelog

Packages

PackageUse
@ton/appkitCore AppKit instance, actions, connectors, providers, and types
@ton/appkit/queriesQuery and mutation helpers for data fetching
@ton/appkit-reactReact provider, hooks, components, and core re-exports
@ton/appkit-react/styles.cssDefault component styles
@ton/appkit/swap/omnistonOmniston swap provider
@ton/appkit/swap/dedustDeDust swap provider
@ton/appkit/staking/tonstakersTonstakers staking provider

Examples

The appkit-minter example wires AppKit into a Vite + React application.

This example implements wallet connection, balance and jetton queries, transaction sending, and streaming watches in one place.

Try it live: appkit-minter.

Next steps

On this page