Examples of Smart Contracts
On this page, you can find TON smart contract references implemented for various program software.
info
Make sure you have thoroughly tested contracts before using them in a production environment. This is a critical step to ensure the proper functioning and security of your software.
FunC Smart Contracts
Production-Used Contracts
Contracts | Description |
---|---|
wallet-contract 🪄 Run in WebIDE | Wallet v4 is the proposed version of the wallet to replace v3 or older wallets |
liquid-staking-contract 🪄 Run in WebIDE | Liquid Staking (LSt) is a protocol that connects TON holders of all calibers with hardware node operators to participate in TON Blockchain validation through asset pooling. |
modern_jetton 🪄 Run in WebIDE | Implementation of standard jetton with additional withdraw_tons and withdraw_jettons. |
highloadwallet-v3 | This wallet is designed for those who need to send transactions at very high rates, such as crypto exchanges. |
stablecoin-contract | Jetton-with-governance FunC smart contracts, used for stablecoins such as USDt. |
governance-contract 🪄 Run in WebIDE | Core TON Blockchain contracts elector-code.fc and config-code.fc . |
bridge-func 🪄 Run in WebIDE | TON-EVM Toncoin Bridge. |
token-bridge-func 🪄 Run in WebIDE | TON-EVM token bridge - FunC smart contracts. |
lockup-wallet-contract/universal 🪄 Run in WebIDE | The universal lockup wallet is a contract that can store locked and restricted coins. |
lockup-wallet-contract/vesting 🪄 Run in WebIDE | Vesting wallet smart-contract |
multisig-contract 🪄 Run in WebIDE | (n, k) -multisig wallet is a wallet with n private keys holders, which accepts requests to send messages if the request collects at least k signatures of the holders. |
token-contract 🪄 Run in WebIDE | Fungible, Non-Fungible, Semi-Fungible Tokens Smart Contracts |
dns-contract 🪄 Run in WebIDE | Smart contracts of .ton zone. |
nominator-pool 🪄 Run in WebIDE | Nominator Pool smart contract |
single-nominator-pool 🪄 Run in WebIDE | Single Nominator Pool smart contract |
vesting-contract 🪄 Run in WebIDE | Nominator Pool smart contract |
storage 🪄 Run in WebIDE | TON Storage provider and fabric contracts |
Ecosystem Contracts
Contracts | Description |
---|---|
telemint 🪄 Run in WebIDE | Telegram Usenames(nft-item.fc ) and Telegram Numbers(nft-item-no-dns.fc ) contracts. |
capped-fungible-token 🪄 Run in WebIDE | Basic implementation of smart contracts for Jetton Wallet and Jetton Minter |
gusarich-airdrop | Implementation of a Scalable Airdrop System for the TON blockchain. It can be used to distribute Jettons on-chain to any number of wallets. |
getgems-io/nft-contracts 🪄 Run in WebIDE | Getgems NFT Contracts |
lockup-wallet-deployment 🪄 Run in WebIDE | Deploy and run lockup Contract end to end |
WTON 🪄 Run in WebIDE | This smart contract provides an implementation of wrapped Toncoin, called WTON |
wton-contract 🪄 Run in WebIDE | wTON contracts |
contract-verifier-contracts 🪄 Run in WebIDE | Sources registry contracts which stores an on-chain proof per code cell hash. |
vanity-contract 🪄 Run in WebIDE | Smart contract that allows to "mine" any suitable address for any contract. |
ton-config-smc 🪄 Run in WebIDE | Simple contract for storing versioned data in TON Blockchain. |
ratelance 🪄 Run in WebIDE | Ratelance is freelance platform that seeks to remove barriers between potential employers and workers. |
logger.fc 🪄 Run in WebIDE | Contract that saves data in the local storage. |
ton-nominators 🪄 Run in WebIDE | Ton Whales Nominator pool source code. |
ton-link-contract-v3 🪄 Run in WebIDE | Ton-link allows smart contracts to access data outside of the blockchain while maintaining data security. |
delab-team/fungible-token 🪄 Run in WebIDE | DeLab TON fungible-token implementation |
whitelisted-wallet.fc 🪄 Run in WebIDE | Simple Whitelisted Wallet Contract |
delab-team/jetton-pool 🪄 Run in WebIDE | The Jetton Pool TON smart contract is designed to create farming pools. |
ston-fi/contracts 🪄 Run in WebIDE | Stonfi DEX core contracts |
onda-ton 🪄 Run in WebIDE | Onda Lending Pool - Core smart contracts of the first lending protocol on TON |
ton-stable-timer 🪄 Run in WebIDE | TON Stable Timer contract |
HipoFinance/contract 🪄 Run in WebIDE | hTON is a decentralized, permission-less, open-source liquid staking protocol on TON Blockchain |
Learning Contracts
Contracts | Description |
---|---|
counter.fc 🪄 Run in WebIDE | Counter smart contract with comments. |
simple-distributor 🪄 Run in WebIDE | Simple TON distributor. |
ping-pong.fc 🪄 Run in WebIDE | Simple contract to test sending Toncoin in different modes. |
ton-random 🪄 Run in WebIDE | Two contracts that will help you in generating random numbers on-chain. |
Blueprint simple contract 🪄 Run in WebIDE | Example smart contract |
Blueprint jetton_minter.fc 🪄 Run in WebIDE | Smart contract example to mint Jettons on-chain. |
Simple TON DNS Subdomain manager 🪄 Run in WebIDE | TON DNS subdomains manager. |
disintar/sale-dapp 🪄 Run in WebIDE | React + NFT sale DApp with FunC |
TON Smart Challenges
TON Smart Challenge 1
- https://github.com/nns2009/TON-FunC-contest-1/tree/main
- https://github.com/pyAndr3w/func-contest1-solutions
- https://github.com/crazyministr/TonContest-FunC/tree/master/func-contest1
TON Smart Challenge 2
- https://github.com/ton-blockchain/func-contest2-solutions
- https://github.com/nns2009/TON-FunC-contest-2
- https://github.com/crazyministr/TonContest-FunC/tree/master/func-contest2
TON Smart Challenge 3
- https://github.com/nns2009/TON-FunC-contest-3
- https://github.com/shuva10v/func-contest3-solutions
- https://github.com/crazyministr/TonContest-FunC/tree/master/func-contest3
TON Smart Challenge 4
- https://github.com/akifoq/tsc4 (TOP optimized)
- https://github.com/Gusarich/tsc4
- https://github.com/Skydev0h/tsc4
- https://github.com/aSpite/tsc4-contracts (FunC solution)
- https://github.com/ProgramCrafter/tsc4 (FunC solution)
Fift Smart Contracts
- CreateState.fif
- asm-to-cpp.fif
- auto-dns.fif
- complaint-vote-req.fif
- complaint-vote-signed.fif
- config-proposal-vote-req.fif
- config-proposal-vote-signed.fif
- create-config-proposal.fif
- create-config-upgrade-proposal.fif
- create-elector-upgrade-proposal.fif
- envelope-complaint.fif
- gen-zerostate-test.fif
- gen-zerostate.fif
- highload-wallet-v2-one.fif
- highload-wallet-v2.fif
- highload-wallet.fif
- manual-dns-manage.fif
- new-auto-dns.fif
- new-highload-wallet-v2.fif
- new-highload-wallet.fif
- new-manual-dns.fif
- new-pinger.fif
- new-pow-testgiver.fif
- new-restricted-wallet.fif
- new-restricted-wallet2.fif
- new-restricted-wallet3.fif
- new-testgiver.fif
- new-wallet-v2.fif
- new-wallet-v3.fif
- new-wallet.fif
- show-addr.fif
- testgiver.fif
- update-config-smc.fif
- update-config.fif
- update-elector-smc.fif
- validator-elect-req.fif
- validator-elect-signed.fif
- wallet-v2.fif
- wallet-v3.fif
- wallet.fif
- wallet-v3-code.fif
FunC Libraries and Helpers
- https://github.com/ton-blockchain/ton/blob/master/crypto/smartcont/stdlib.fc
- https://github.com/TonoxDeFi/open-contracts/tree/main/contracts/crypto/elliptic-curves
- https://github.com/TonoxDeFi/open-contracts/tree/main/contracts/math
- https://github.com/TonoxDeFi/open-contracts/tree/main/contracts/messages
- https://github.com/TonoxDeFi/open-contracts/tree/main/contracts/slices
- https://github.com/TonoxDeFi/open-contracts/tree/main/contracts/strings
- https://github.com/TonoxDeFi/open-contracts/tree/main/contracts/tuples
- https://github.com/TonoxDeFi/open-contracts/tree/main/contracts/utils
- https://github.com/disintar/sale-dapp/tree/master/func
Add Reference
If you want to share a new example smart contract, make your PR for this page.