🌏TON 开发者文档现已推出中文版本!
As TON expands around the world, we're excited to announce Mandarin localization.
You can now access the following dev resources in Mandarin:
▪️TON Documentation
▪️Blockchain Basics Course
享受你的编程之旅!
As TON expands around the world, we're excited to announce Mandarin localization.
You can now access the following dev resources in Mandarin:
▪️TON Documentation
▪️Blockchain Basics Course
享受你的编程之旅!
👍63❤10🥰7🔥5
Smart contract libraries
TON smart contract developers, you can use smart contract libraries to optimize the network fees of your smart contract, in particular the storage and forward fees.
Libraries are applicable if you have multiple instances of a smart contract that have common data.
The common data (e.g. smart contract code) can be stored in the library, and the smart contract will only reference it.
You can find an example of how to use this functionality in the new Jetton-with-governance and Multisig 2.0 smart contracts.
Documentation »
TON smart contract developers, you can use smart contract libraries to optimize the network fees of your smart contract, in particular the storage and forward fees.
Libraries are applicable if you have multiple instances of a smart contract that have common data.
The common data (e.g. smart contract code) can be stored in the library, and the smart contract will only reference it.
You can find an example of how to use this functionality in the new Jetton-with-governance and Multisig 2.0 smart contracts.
Documentation »
❤37👍9
Efficiency of TON blockchain state storage
We would like to draw attention to the beauty of the TON architecture.
Even without libraries, serialized data in the blockchain is automatically compressed, which means that the same data cells are deduplicated.
This fits well with the guidelines of writing distributed smart contracts on TON - not to make a single huge smart contract that is a bottleneck, but to make many small actors. Identical cells of instances of the same smart contracts will be stored once, so the final blockchain state is not bloated.
We would like to draw attention to the beauty of the TON architecture.
Even without libraries, serialized data in the blockchain is automatically compressed, which means that the same data cells are deduplicated.
This fits well with the guidelines of writing distributed smart contracts on TON - not to make a single huge smart contract that is a bottleneck, but to make many small actors. Identical cells of instances of the same smart contracts will be stored once, so the final blockchain state is not bloated.
❤37👍16😍4🐳4🔥2
Introduction of precompiled smart contracts
New functionality will be introduced in the next node update.
The code of the most popular smart contracts can be written in C++ and embedded in node.
Since such precompiled smart contracts do not need to run TVM to execute, they consume less resources and therefore their network fees can be reduced.
It is planned to offer validators to apply this optimization to the new Jetton-with-governance smart contract.
Next step is introduction of refreshed Jetton smart contract code (fully compatible with the old Jetton of course) and propose to make it precompile as well.
In order for the precompile optimization to apply, validators need to vote for each smart contract type. Note, that precompiles can be activated step-wise: first by activating new cost rules and then by activating embedded code execution.
Documentation »
New functionality will be introduced in the next node update.
The code of the most popular smart contracts can be written in C++ and embedded in node.
Since such precompiled smart contracts do not need to run TVM to execute, they consume less resources and therefore their network fees can be reduced.
It is planned to offer validators to apply this optimization to the new Jetton-with-governance smart contract.
Next step is introduction of refreshed Jetton smart contract code (fully compatible with the old Jetton of course) and propose to make it precompile as well.
In order for the precompile optimization to apply, validators need to vote for each smart contract type. Note, that precompiles can be activated step-wise: first by activating new cost rules and then by activating embedded code execution.
Documentation »
👍78❤31🔥9
Introducing new TVM opcodes for easy calculation of fees
New TVM opcodes was intoduced in 2024.04 update that allow you not to hardcode fees in Toncoins, but to dynamically calculate it in code.
You can find an example of how to use this functionality in the new Jetton-with-governance and Multisig 2.0 smart contracts.
Documentation »
New TVM opcodes was intoduced in 2024.04 update that allow you not to hardcode fees in Toncoins, but to dynamically calculate it in code.
You can find an example of how to use this functionality in the new Jetton-with-governance and Multisig 2.0 smart contracts.
Documentation »
❤51🔥20👍14👏2
Reducing transaction costs — a guideline for developers — MUST READ
As you know the TON provides for the possibility of reducing the price of gas and message forwarding by a network-wide vote.
What developers need to know with this lowering transaction costs:
1) Current smart contracts where fees are hardcoded will not break, as there will be a decrease of gas/forward price, not an increase.
2) Please use new TVM opcodes in your smart contracts to dynamically calculate fees and do not hardcode fees in Toncoins in the smart contract code.
3) No one knows Toncoin future market dynamic. This means that after a decrease, after some time there may be a increase of transaction costs measured in TON.
Never hardcode fees in Toncoin at a reduced price in the smart contract code, otherwise your smart contract will break at a possible increase of gas price.
We can guarantee that the gas price will not be higher than the current price (as of April 16, 2024).
As you know the TON provides for the possibility of reducing the price of gas and message forwarding by a network-wide vote.
What developers need to know with this lowering transaction costs:
1) Current smart contracts where fees are hardcoded will not break, as there will be a decrease of gas/forward price, not an increase.
2) Please use new TVM opcodes in your smart contracts to dynamically calculate fees and do not hardcode fees in Toncoins in the smart contract code.
3) No one knows Toncoin future market dynamic. This means that after a decrease, after some time there may be a increase of transaction costs measured in TON.
Never hardcode fees in Toncoin at a reduced price in the smart contract code, otherwise your smart contract will break at a possible increase of gas price.
We can guarantee that the gas price will not be higher than the current price (as of April 16, 2024).
❤79👍52🔥15💩1👀1
Forwarded from TON Tech
🔨 TON Connect SDK Update
We are excited to announce the release of the TON Connect SDK.
👥 @tonconnect/{sdk,ui,ui-react}
• Eliminated all race conditions.
• Enhanced handling of unstable internet connections.
• Improved transitions between browsers and wallets.
• Added a loading indicator for transaction.
• Removed connection restoration wait.
• Mobile modals adapted for tablets.
• Fixed hooks errors in ui-react.
• Added an experimental method for connecting to specific wallet.
📁 New package versions
• @tonconnect/sdk 3.0.2
• @tonconnect/ui 2.0.2
• @tonconnect/ui-react 2.0.2
⬇️ To update, run
💡 To learn more, visit the GitHub page at https://github.com/ton-connect/sdk.
💬 Encountered issues? Please report them on GitHub at https://github.com/ton-connect/sdk/issues.
🎁 Your feedback and usage examples are crucial. Share your experiences to help us evolve the SDK!
We are excited to announce the release of the TON Connect SDK.
• Eliminated all race conditions.
• Enhanced handling of unstable internet connections.
• Improved transitions between browsers and wallets.
• Added a loading indicator for transaction.
• Removed connection restoration wait.
• Mobile modals adapted for tablets.
• Fixed hooks errors in ui-react.
• Added an experimental method for connecting to specific wallet.
• @tonconnect/sdk 3.0.2
• @tonconnect/ui 2.0.2
• @tonconnect/ui-react 2.0.2
npm install @tonconnect/ui-react or npm install @tonconnect/ui.Please open Telegram to view this post
VIEW IN TELEGRAM
👍81❤6👎2
Attention TON Developers 🤑
The TON Dev Community calls on your expertise to contribute to advancing the TON ecosystem. Your insights and experiences in development are invaluable in making TON more robust and user-friendly.
We encourage every community member to share their experiences with TON development by participating in our survey.
The survey encompasses four key topics and will take approximately 5-8 minutes of your time.
👉 https://nletwfvh.paperform.co
The TON Dev Community calls on your expertise to contribute to advancing the TON ecosystem. Your insights and experiences in development are invaluable in making TON more robust and user-friendly.
We encourage every community member to share their experiences with TON development by participating in our survey.
The survey encompasses four key topics and will take approximately 5-8 minutes of your time.
👉 https://nletwfvh.paperform.co
Please open Telegram to view this post
VIEW IN TELEGRAM
Paperform
Free Online Form Builder & Form Creator for SMBs in 2026 | Paperform
Create forms and surveys, take payments, automate workflows and send documents for signing, all from one easy, doc‑style form builder FOR FREE
👍85❤20👌13❤🔥7
The re:doubt team played a pivotal role in crafting a sophisticated analytics platform for the Open League. Now, the talented team will join the TON Foundation, bringing their expertise to construct an analytics platform aimed at accelerating innovations for the TON ecosystem's growth. Pavel Shuvalov, the CTO of re:doubt, will transition to the role of Analytics Lead at TON Foundation, spearheading platform development with his extensive experience and vision.
❤32👍12🔥2
Forwarded from re:doubt
We are announce that re:doubt, will join the TON Foundation team.
The talented team behind re:doubt will help to build an analytics platform for the TON Foundation needs.
We want to inform our valued community members that while we are excited to share our solutions and open-source a number of re:doubt's products in the near future, this decision necessitates the disabling of some of our current solutions, including GraphQL, REST API, Tonalytica, bots, and others.
Our priority is to ensure a smooth transition for our partners and minimize any disruptions to their businesses. We are committed to working closely with our partners to mitigate any potential impacts and ensure that they can continue to operate effectively during this period of change.
We apologize for any inconvenience this may cause and appreciate your patience and understanding as we make these necessary adjustments. We will keep you updated on our progress and encourage you to reach out to us with any questions or concerns you may have.
Thank you for your continued support as we strive to enhance the TON ecosystem through greater transparency and collaboration.
The talented team behind re:doubt will help to build an analytics platform for the TON Foundation needs.
We want to inform our valued community members that while we are excited to share our solutions and open-source a number of re:doubt's products in the near future, this decision necessitates the disabling of some of our current solutions, including GraphQL, REST API, Tonalytica, bots, and others.
Our priority is to ensure a smooth transition for our partners and minimize any disruptions to their businesses. We are committed to working closely with our partners to mitigate any potential impacts and ensure that they can continue to operate effectively during this period of change.
We apologize for any inconvenience this may cause and appreciate your patience and understanding as we make these necessary adjustments. We will keep you updated on our progress and encourage you to reach out to us with any questions or concerns you may have.
Thank you for your continued support as we strive to enhance the TON ecosystem through greater transparency and collaboration.
🔥39👍23❤3
Forwarded from Tonkeeper News
🏆 Tonkeeper Contest iOS & Android
Prize fund: $ 100 000
Deadline: May 29, 2024
Results: June 10, 2024
Subscribe for updates: @tonkeeper_news
Tonkeeper is a leading non-custodial TON wallet with innovations such as TON Connect for secure connection to thousands of dapps, next-generation wallet standard W5 and Tonkeeper Battery for gasless transactions. Our team builds the largest developer platform on TON — TonAPI, used every day by over 80% of projects in TON. Tonkeeper is the biggest non-custodial wallet in TON with over 2,300,000 active monthly users on 8 platforms.
Today we are excited to launch a contest for iOS and Android developers, with a prize fund of over 20 000 TON (≈ $100 000).
Fully-native Tonkeeper X will be faster and better in all dimensions. The goal of this contest is to add three missing features.
Rules
1. Top 10 developers receive prizes for each feature they implement. Features rated independently.
2. Top 3 developers receive extra-large prizes 🤑.
3. ✨A special bonus✨ for developers who provide all three features in one submission.
4. The finalists of this contest will be invited to join Tonkeeper team ❤️.
5. Submission deadline is May 29.
6. Results will be announced by June 10.
Features
1. Stake: stake TONs and earn rewards through staking pools.
2. Swap: native interface for seamless asset swaps.
3. Buy & Sell: trade TON, USDT and fiat through partner platforms.
👉 Figma designs for all features
Requirements
1. Swift and Kotlin on respective platforms (iOS and Android).
2. Use TonAPI.io for access to the blockchain data.
3. We expect meticulous attention to detail, smooth animations, lack of glitches or bugs.
4. Submit your pull request: iOS, Android (include build instructions if needed)
Questions?
💬 Join Tonkeeper Contest group to chat with our developers (English only pls). Reference code: react-native app, tonkeeper web.
We can’t wait to see how your talents unfold in this challenge. Good luck! 🚀
Prize fund: $ 100 000
Deadline: May 29, 2024
Results: June 10, 2024
Subscribe for updates: @tonkeeper_news
Tonkeeper is a leading non-custodial TON wallet with innovations such as TON Connect for secure connection to thousands of dapps, next-generation wallet standard W5 and Tonkeeper Battery for gasless transactions. Our team builds the largest developer platform on TON — TonAPI, used every day by over 80% of projects in TON. Tonkeeper is the biggest non-custodial wallet in TON with over 2,300,000 active monthly users on 8 platforms.
Today we are excited to launch a contest for iOS and Android developers, with a prize fund of over 20 000 TON (≈ $100 000).
Fully-native Tonkeeper X will be faster and better in all dimensions. The goal of this contest is to add three missing features.
Rules
1. Top 10 developers receive prizes for each feature they implement. Features rated independently.
2. Top 3 developers receive extra-large prizes 🤑.
3. ✨A special bonus✨ for developers who provide all three features in one submission.
4. The finalists of this contest will be invited to join Tonkeeper team ❤️.
5. Submission deadline is May 29.
6. Results will be announced by June 10.
Features
1. Stake: stake TONs and earn rewards through staking pools.
2. Swap: native interface for seamless asset swaps.
3. Buy & Sell: trade TON, USDT and fiat through partner platforms.
👉 Figma designs for all features
Requirements
1. Swift and Kotlin on respective platforms (iOS and Android).
2. Use TonAPI.io for access to the blockchain data.
3. We expect meticulous attention to detail, smooth animations, lack of glitches or bugs.
4. Submit your pull request: iOS, Android (include build instructions if needed)
Questions?
💬 Join Tonkeeper Contest group to chat with our developers (English only pls). Reference code: react-native app, tonkeeper web.
We can’t wait to see how your talents unfold in this challenge. Good luck! 🚀
🔥60👍33❤10👎5🤡5👏4🤯3😁2🥰1
🚀 tonutils-go v1.9.6 released!
* RLDP Tunning
* Fixed transaction Dump method panic (when no outs)
* Added FindLastTransactionByInMsgHash + FindLastTransactionByOutMsgHash to ton package
* Builtin Offline LiteClient impl for cold wallets
* Proof generation of key absence in dictionary
* Added methods ToRawUnsafe/FromRawUnsafe for manual low level cell construction
* Added Preload methods to cell slice (can be used instead of copy + load now, more efficient)
* Fixed WithRetry LS wrapper when using with timeout
* RLDP Tunning
* Fixed transaction Dump method panic (when no outs)
* Added FindLastTransactionByInMsgHash + FindLastTransactionByOutMsgHash to ton package
* Builtin Offline LiteClient impl for cold wallets
* Proof generation of key absence in dictionary
* Added methods ToRawUnsafe/FromRawUnsafe for manual low level cell construction
* Added Preload methods to cell slice (can be used instead of copy + load now, more efficient)
* Fixed WithRetry LS wrapper when using with timeout
GitHub
GitHub - xssnick/tonutils-go: TON SDK Library in pure Golang for interacting with The Open Network ecosystem using native protocols…
TON SDK Library in pure Golang for interacting with The Open Network ecosystem using native protocols, such as ADNL, RLDP and etc. - xssnick/tonutils-go
❤47👍26🔥14😱7🎉2
TON中文开发课程上线啦! 🧑🎓
Are you a Mandarin speaker who wants to improve your TON development skills?
We now have Mandarin TON Blockchain courses on Bilibili:
🟢TON Blockchain Course
🟢Blockchain Basics with TON
Are you a Mandarin speaker who wants to improve your TON development skills?
We now have Mandarin TON Blockchain courses on Bilibili:
🟢TON Blockchain Course
🟢Blockchain Basics with TON
Please open Telegram to view this post
VIEW IN TELEGRAM
👍36🔥6❤4
Forwarded from TON Community
13 IRL Bootcamps. 13 Cities. $2,000,000 Hackathon 🌍
Ton Society is hosting 13 offline Open League Summer Bootcamps all around the globe 🔥
Come to meet, learn, and build your Open League Hackathon project 🫡
📍The Open League Summer Bootcamps will be hosted in 13 locations!
May 24-26th: Prague, Moscow, Hong Kong
May 31th-June 2nd: Berlin, Belgrade, St Petersburg, Taipei
June 4-6th: Seoul
June 5-7th: Tbilisi
June 7-9th: Warsaw, Kyiv, Gurugram, Minsk
💸 Win up to $500,000 from the $2,000,000 Hackathon prize pool + $5,000 prize pool for each bootcamp.
👉 Choose your city and register: https://society.ton.org/activities/open-league
Ton Society is hosting 13 offline Open League Summer Bootcamps all around the globe 🔥
Come to meet, learn, and build your Open League Hackathon project 🫡
📍The Open League Summer Bootcamps will be hosted in 13 locations!
May 24-26th: Prague, Moscow, Hong Kong
May 31th-June 2nd: Berlin, Belgrade, St Petersburg, Taipei
June 4-6th: Seoul
June 5-7th: Tbilisi
June 7-9th: Warsaw, Kyiv, Gurugram, Minsk
💸 Win up to $500,000 from the $2,000,000 Hackathon prize pool + $5,000 prize pool for each bootcamp.
👉 Choose your city and register: https://society.ton.org/activities/open-league
🔥57👍17❤9
‼️Please update the list of wallets in TonConnect if you want to allow authorization in your dApp via Ton Space.‼️
🤯38👍18❤7💊5🌭3🔥2
Forwarded from Tonkeeper News
A month ago, Tonkeeper introduced a breakthrough 🔋Tonkeeper Battery feature that pays transactions fees when an account’s TON balance is zero. The Battery covers payments, staking, swaps and more with any tokens and NFTs. In just one month, Battery relayed almost 1,000,000 transactions covering over $100,000 in fees.
Today we are making a big step forward:
Gasless USDT transfers in Tonkeeper work 2x faster and 1.5x cheaper than in any other wallet. This is possible thanks to a new wallet architecture called
To try Gasless Transactions:
1. Update Tonkeeper to version 4.6.1
2. Tap “USDT” and select “Try W5 Wallet”
3. Add the “W5” wallet alongside a current wallet and send some USDT to it
4. Pay with USDT and Notcoin without TON!
To learn more about these new product features check out our next post:
Download Tonkeeper: tonkeeper.com
Follow: en · ru · فارسی · twitter
Please open Telegram to view this post
VIEW IN TELEGRAM
👍33🔥19❤10🥰1😁1
Forwarded from Tonkeeper News
This media is not supported in your browser
VIEW IN TELEGRAM
🔋Tonkeeper Battery, ⚡️ Gasless and 🔥 W5
Main announcement👉 t.me/tonkeeper_news/116
Learn how Battery, gasless transactions and wallet standard🔥 W5 help people onboard to the world of TON 👇
1️⃣ Have gas fees been removed from Tonkeeper?
No. The TON network charges a fee for every transaction, paid in Toncoins. Battery and Gasless are optional features that simplify paying the same fees without using Toncoins.
2️⃣ How do gasless transactions work?
When transferring USDT, Tonkeeper attaches a fee payment from the account’s USDT balance to the same transaction. Tonkeeper takes care of paying the TON fees behind the scenes.
3️⃣ Why do I need a new🔥 W5 wallet account?
🔥 W5 enables efficient payment of fees that are 2x faster and cost less in fees compared to all other wallet apps that use the current standard version 4.
4️⃣ I already have charges in my Battery, can I use it?
Yes, the Battery balance in an existing wallet can be used to pay fees on the🔥 W5 wallet that uses the same recovery phrase.
5️⃣ Should I move all my funds to🔥 W5?
Do not move all funds.🔥 W5 is currently in beta and under development. The final version is coming in summer and may have a different address: users who tried 🔥 W5 Beta may need to move funds again to the final version.
6️⃣ Why do I need the Battery if USDT can work without it?
The Battery is designed to cover all transactions with many different kinds of assets, including NFTs. Gasless only works with USDT and Notcoin because it’s not possible to pay fees with a fraction of an NFT and less popular tokens are more volatile or illiquid.
7️⃣ Supported features
Gasless: Transfers of USDT, jUSDT and Notcoin. Only available in🔥 W5 wallets.
Battery: Transfers of all tokens, NFTs, swaps, both v4 and🔥 W5 wallets.
Soon: Gasless swaps on🔥 W5, advanced NFT operations with Battery.
Download Tonkeeper: tonkeeper.com
Follow: en · ru · فارسی · twitter
Main announcement
Learn how Battery, gasless transactions and wallet standard
1️⃣ Have gas fees been removed from Tonkeeper?
No. The TON network charges a fee for every transaction, paid in Toncoins. Battery and Gasless are optional features that simplify paying the same fees without using Toncoins.
2️⃣ How do gasless transactions work?
When transferring USDT, Tonkeeper attaches a fee payment from the account’s USDT balance to the same transaction. Tonkeeper takes care of paying the TON fees behind the scenes.
3️⃣ Why do I need a new
4️⃣ I already have charges in my Battery, can I use it?
Yes, the Battery balance in an existing wallet can be used to pay fees on the
5️⃣ Should I move all my funds to
Do not move all funds.
6️⃣ Why do I need the Battery if USDT can work without it?
The Battery is designed to cover all transactions with many different kinds of assets, including NFTs. Gasless only works with USDT and Notcoin because it’s not possible to pay fees with a fraction of an NFT and less popular tokens are more volatile or illiquid.
7️⃣ Supported features
Gasless: Transfers of USDT, jUSDT and Notcoin. Only available in
Battery: Transfers of all tokens, NFTs, swaps, both v4 and
Soon: Gasless swaps on
Download Tonkeeper: tonkeeper.com
Follow: en · ru · فارسی · twitter
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥43👍33😁8🐳5❤3
Preparing for the new v5 version of wallet smart contract
As you know the Tonkeeper team is actively contributing to the development of the TON network. Its previous big contribution was the TON Connect protocol, which eventually became the unified protocol for applications and wallets in the TON network.
In this year, the Tonkeeper team has proposed a new v5-beta version of the wallet smart contract. In beta mode, Tonkeeper Wallet has launched support for this new version.
In addition to retaining the previous functionality (v4), the new contract allows you to send up to 255 messages at a time, as well as to make full-fledged gasless transactions (e.g. payment of network fees when transferring USDt in USDt itself) and other features.
Having studied the contract, we believe it will enhance the usability and capabilities for TON users.
The TON Core team is starting to audit and test this v5-beta smart contract. The smart contract code will change in the course of this work, but we will try to keep its interface intact. The TON Core team plan to complete this work by June 20.
We ask all wallets in the TON ecosystem to support the final smart contract after the audit.
UI:
— Already now wallet teams can start UI preparations. You can use the v5-beta smart contract as a test smart contract, but keep in mind that it will change.
— UI suggestion: wallets that have multi-accounts could support the new v5 smart contract as a separate account in the UI. Provide a “Transfer funds between your accounts” functionality.
Beta:
— If you build v5 functionality into public versions of your products - please mark it as “beta” and do not use v5 contract by default, but only when explicitly enabled in the settings. Please observe this rule to prevent too wide distribution of the non final beta version of the v5 smart contract.
Release:
— The final smart contract will be ready around June 20, after which wallets can enable v5 by default using the final smart contract.
As you know the Tonkeeper team is actively contributing to the development of the TON network. Its previous big contribution was the TON Connect protocol, which eventually became the unified protocol for applications and wallets in the TON network.
In this year, the Tonkeeper team has proposed a new v5-beta version of the wallet smart contract. In beta mode, Tonkeeper Wallet has launched support for this new version.
In addition to retaining the previous functionality (v4), the new contract allows you to send up to 255 messages at a time, as well as to make full-fledged gasless transactions (e.g. payment of network fees when transferring USDt in USDt itself) and other features.
Having studied the contract, we believe it will enhance the usability and capabilities for TON users.
The TON Core team is starting to audit and test this v5-beta smart contract. The smart contract code will change in the course of this work, but we will try to keep its interface intact. The TON Core team plan to complete this work by June 20.
We ask all wallets in the TON ecosystem to support the final smart contract after the audit.
UI:
— Already now wallet teams can start UI preparations. You can use the v5-beta smart contract as a test smart contract, but keep in mind that it will change.
— UI suggestion: wallets that have multi-accounts could support the new v5 smart contract as a separate account in the UI. Provide a “Transfer funds between your accounts” functionality.
Beta:
— If you build v5 functionality into public versions of your products - please mark it as “beta” and do not use v5 contract by default, but only when explicitly enabled in the settings. Please observe this rule to prevent too wide distribution of the non final beta version of the v5 smart contract.
Release:
— The final smart contract will be ready around June 20, after which wallets can enable v5 by default using the final smart contract.
👍275❤99👏32🥰27😁9😭7⚡2🔥2
Preparing for gasless transactions
The v5 wallet smart contract allows the processing of internal messages signed by the owner.
This also allows you to make gasless transactions, e.g. payment of network fees when transferring USDt in USDt itself.
Flow:
1. When sending an USDt the user signs one message containing two outgoing USDt transfers:
1.1. USDt transfer to the recipient's address.
1.2. Transfer of a small amount of USDt in favor of the Service.
2. This signed message is sent offchain by HTTPS to the Service backend. The Service backend sends it to the TON blockchain paying Toncions for network fees.
The Tonkeeper team announced the launch of the beta version of such public backend on June 14. Backend will support the USDt and the NOT.
Although each wallet could launch its own backend, we believe that a single backend would be more convenient if there are network-wide subsidy campaigns. However, the final choice is up to you.
We invite TON wallets to support gasless transactions for USDt (and NOT) by June 20, by the time the v5 wallet smart contract is finalized.
The v5 wallet smart contract allows the processing of internal messages signed by the owner.
This also allows you to make gasless transactions, e.g. payment of network fees when transferring USDt in USDt itself.
Flow:
1. When sending an USDt the user signs one message containing two outgoing USDt transfers:
1.1. USDt transfer to the recipient's address.
1.2. Transfer of a small amount of USDt in favor of the Service.
2. This signed message is sent offchain by HTTPS to the Service backend. The Service backend sends it to the TON blockchain paying Toncions for network fees.
The Tonkeeper team announced the launch of the beta version of such public backend on June 14. Backend will support the USDt and the NOT.
Although each wallet could launch its own backend, we believe that a single backend would be more convenient if there are network-wide subsidy campaigns. However, the final choice is up to you.
We invite TON wallets to support gasless transactions for USDt (and NOT) by June 20, by the time the v5 wallet smart contract is finalized.
👍344❤126⚡31🤯23🔥15🎉15🤮15🎅12👎11😁5🖕4
🚀 Tact v1.3 release notes
The new Tact v1.3 release provides a massive improvement on the smart contract programming for TON blockchain.
🗺 Maps
Traversing a map has never been easier! The
You don't have to use
Want to check if the map is empty? Use
🔤 Strings
Strings finally support escape sequences, like \\, \", \n, \u0000 through \uFFFF, etc.
There is a new non-modifying StringBuilder's concat method for chained string concatenations:
We added the
👌 Handling exceptions
Want to process various TVM and user-defined exit codes before your contract fails at runtime? The
☀️ New quality-of-life improving syntax
Tact started supporting struct fields punning, i.e.
There is support for trailing commas in all comma-separated lists in Tact, here is how you can use it with structs:
You can now chain method calls with the unboxing operator
For those missing some bit-level hackery, there is the bitwise XOR operator
⚙️ Stdlib enhancements
The Tact team has added
Use reserve mode constants from @stdlib/reserve instead of their numeric values to make your code even easier to read: https://docs.tact-lang.org/ref/core-advanced#nativereserve-base-modes.
🧠 Debugging
Debugging has become easier now as the
Addresses can be arguments of the dump function.
💻 Tact CLI
Tact's command line interface just became a lot more user-friendly: run
Just a highlight: CLI now allows compiling a single Tact file directly, without specifying a config file:
🛠 Third-party tools support
For third-party tools implementors there is new improved APIs: AST traversals, access to the AST store of top-level items like functions, constants, traits, etc.
Happy hacking! ❤️
Check out Tact's CHANGELOG for the comprehensive list of features, changes and bugfixes.
Check out the Tact docs and read about the new Tact features.
To upgrade your Blueprint-based Tact projects to use Tact v1.3.1, run npm upgrade inside the project folder.
This release was brought to you by 0kenx, byakuren-hijiri, Max Korsunov, Novus Nota, Vitor Py, Daniil Sedov, and Anton Trunov.
The new Tact v1.3 release provides a massive improvement on the smart contract programming for TON blockchain.
🗺 Maps
Traversing a map has never been easier! The
foreach loop for the Map type:
let mapLength: Int = 0;
foreach (k, v in map) {
mapLength += 1;
}
You don't have to use
map.set(key, null) to remove a key from your maps, use the more intuitive del method instead: map.del(key).Want to check if the map is empty? Use
map.isEmpty()!🔤 Strings
Strings finally support escape sequences, like \\, \", \n, \u0000 through \uFFFF, etc.
There is a new non-modifying StringBuilder's concat method for chained string concatenations:
b = b.concat("Hello,").concat(foo).concat("Tact!").We added the
toString method for the Address type that you asked for numerous times in the dev chats: address("EQBKgXCNLPexWhs2L79kiARR1phGH1LwXxRbNsCFF9doc2lN").toString().👌 Handling exceptions
Want to process various TVM and user-defined exit codes before your contract fails at runtime? The
try and try-catch statements: https://docs.tact-lang.org/book/statements#try-catch:
try {
let foo: Int = 42 / 0;
} catch(e) {
// your division by zero handler
}
☀️ New quality-of-life improving syntax
Tact started supporting struct fields punning, i.e.
{foo, bar} is syntactic sugar for { foo: foo, bar: bar }.There is support for trailing commas in all comma-separated lists in Tact, here is how you can use it with structs:
foo(Struct {
field1: 42,
field2: "42",
})
You can now chain method calls with the unboxing operator
!!, e.g. map.asCell()!!.hash().For those missing some bit-level hackery, there is the bitwise XOR operator
^ available now.⚙️ Stdlib enhancements
The Tact team has added
log2 and log, pow2 and pow functions.Use reserve mode constants from @stdlib/reserve instead of their numeric values to make your code even easier to read: https://docs.tact-lang.org/ref/core-advanced#nativereserve-base-modes.
🧠 Debugging
Debugging has become easier now as the
dump() and dumpStack() functions now print the file path, line number, and column number in addition to the data specified by the programmer.Addresses can be arguments of the dump function.
💻 Tact CLI
Tact's command line interface just became a lot more user-friendly: run
npx tact --help from terminal and see what's available.Just a highlight: CLI now allows compiling a single Tact file directly, without specifying a config file:
npx tact your-awesome-contract.tact. It's very useful for quick experiments or bug reports.🛠 Third-party tools support
For third-party tools implementors there is new improved APIs: AST traversals, access to the AST store of top-level items like functions, constants, traits, etc.
Happy hacking! ❤️
Check out Tact's CHANGELOG for the comprehensive list of features, changes and bugfixes.
Check out the Tact docs and read about the new Tact features.
To upgrade your Blueprint-based Tact projects to use Tact v1.3.1, run npm upgrade inside the project folder.
This release was brought to you by 0kenx, byakuren-hijiri, Max Korsunov, Novus Nota, Vitor Py, Daniil Sedov, and Anton Trunov.
⚡ Tact Documentation
Statements
This page lists all the statements in Tact that can appear anywhere in function bodies.
👍102❤82🔥15👏6🤔6👎4🥰4
🧑🍳 The Tact team invites you to peek behind the scenes and into the steaming pot of hot updates to the Tact compiler, tooling, documentation and ecosystem as a whole, join our Telegram channel: @tact_kitchen.
⚡️ You know what's cooking — Tact!
⚡️ You know what's cooking — Tact!
❤78👍37⚡16🙈3