05.02.202517:46
🚀 Tact v1.5 Audited by Trail of Bits
The security audit for Tact v1.5 has been completed by Trail of Bits, a leading Web3 security firm.
✅ No high-severity vulnerabilities were found.
🔧 Some bugs and points of improvement were discovered and addressed in a new Tact v1.5.4 bugfix release.
Thanks to Trail of Bits for their thorough review!
The report can be accessed at the Trail of Bits GitHub repo: https://github.com/trailofbits/publications/blob/master/reviews/2025-01-ton-studio-tact-compiler-securityreview.pdf
⚡️ In the meantime we continue to improve Tact with new language features, gas optimizations (a lot of those lately!), and enhancements to the compiler’s reliability. This ensures a secure and efficient development experience on TON Blockchain.
👉 Upgrade to Tact 1.5.4, if not already: https://docs.tact-lang.org/book/compile/#upgrades
🍲 cooking with great care for performance and users
♨️ @tact_kitchen
The security audit for Tact v1.5 has been completed by Trail of Bits, a leading Web3 security firm.
✅ No high-severity vulnerabilities were found.
🔧 Some bugs and points of improvement were discovered and addressed in a new Tact v1.5.4 bugfix release.
Thanks to Trail of Bits for their thorough review!
The report can be accessed at the Trail of Bits GitHub repo: https://github.com/trailofbits/publications/blob/master/reviews/2025-01-ton-studio-tact-compiler-securityreview.pdf
⚡️ In the meantime we continue to improve Tact with new language features, gas optimizations (a lot of those lately!), and enhancements to the compiler’s reliability. This ensures a secure and efficient development experience on TON Blockchain.
👉 Upgrade to Tact 1.5.4, if not already: https://docs.tact-lang.org/book/compile/#upgrades
🍲 cooking with great care for performance and users
♨️ @tact_kitchen
Не змогли отримати доступ
до медіаконтенту
до медіаконтенту
18.10.202414:52
⚡️ Added destructuring statements
It's a concise way to unpack Structs and Messages into distinct variables, which mirrors the instantiation syntax:
One can also create bindings under different variable names or ignore some of the fields. Note, that the order doesn't matter:
🧑🍳 Contributors: Gusarich, Novus Nota (docs)
🐙 Implementation: #856
🍽 To be released in: v1.6.0
🍲 Everyone within a 100 mile radius after you eat a taco
♨️ @tact_kitchen
It's a concise way to unpack Structs and Messages into distinct variables, which mirrors the instantiation syntax:
// Definition of Example
One can also create bindings under different variable names or ignore some of the fields. Note, that the order doesn't matter:
// "first" goes first, then goes "second"
🧑🍳 Contributors: Gusarich, Novus Nota (docs)
🐙 Implementation: #856
🍽 To be released in: v1.6.0
🍲 Everyone within a 100 mile radius after you eat a taco
♨️ @tact_kitchen
22.08.202410:00
🎉 Misti 0.2 has just landed on NPM!
🔍 Five New Tact Detectors: Сonstant Address, Branch Duplicate, `dump` Is Used, Field Initialized Twice, Prefer Augmented Assignment.
🛠 Blueprint Support: Introducing the new Blueprint Plugin.
🔧 Fixes & Enhancements: More configuration options and various fixes. Check out the full changelog.
♨️ @tact_kitchen
🔍 Five New Tact Detectors: Сonstant Address, Branch Duplicate, `dump` Is Used, Field Initialized Twice, Prefer Augmented Assignment.
🛠 Blueprint Support: Introducing the new Blueprint Plugin.
🔧 Fixes & Enhancements: More configuration options and various fixes. Check out the full changelog.
♨️ @tact_kitchen


04.02.202505:04
⚡️ Added a Compilation page to the docs
❓ Did you know how to use Tact compiler on the CLI and its configuration settings?
❓ Have you ever wanted to easily upgrade the compiler or pin a specific version?
❓ Or have you ever wondered about the
✅ Well, look no further — the Compilation page describes it all and more!
See what's in store:
▪️ Compiler upgrades
▪️ Compilation report
▪️ BoC-encoded contracts code
▪️ Contract's package
▪️ Bindings and wrappers for simpler deployments, debugging and interactions with deployed contracts
The wrappers are currently only generated for TypeScript, but this may change in the future — stay tuned 😉
🧑🍳 Contributor: Novus Nota
🐙 Implementation: #1309 and #1676
✈️ Delivered: docs.tact-lang.org/book/compile
The image for this post is taken from:
https://xkcd.com/1755/
🍲 don't
♨️ @tact_kitchen
❓ Did you know how to use Tact compiler on the CLI and its configuration settings?
❓ Have you ever wanted to easily upgrade the compiler or pin a specific version?
❓ Or have you ever wondered about the
build/
or output/
folders and build artifacts produced within them?✅ Well, look no further — the Compilation page describes it all and more!
See what's in store:
▪️ Compiler upgrades
▪️ Compilation report
▪️ BoC-encoded contracts code
▪️ Contract's package
.pkg
and ABI .abi
▪️ Bindings and wrappers for simpler deployments, debugging and interactions with deployed contracts
The wrappers are currently only generated for TypeScript, but this may change in the future — stay tuned 😉
🧑🍳 Contributor: Novus Nota
🐙 Implementation: #1309 and #1676
✈️ Delivered: docs.tact-lang.org/book/compile
The image for this post is taken from:
https://xkcd.com/1755/
🍲 don't
console
my bugs♨️ @tact_kitchen


01.10.202421:02
👏 Huge 👏 Revamp 👏 of Tact 👏 Docs 👏
There were a lot of things we just couldn't do nicely with the previous documentation library, Nextra. Granted, it's very good and has a lot going for it, but its rigidity in important places, as well as its overall pull towards Next.js and Vercel make some features like i18n almost impossible to implement while keeping the static build and not doing the server-side rendering.
It is finally time to move to a more flexible solution: Starlight, a documentation library powered by Astro that allows for great extensibility and bundles (among other things): advanced i18n support via i18next, site navigation, search, SEO, easy-to-read typography, code highlighting, dark mode and more. It's also very lightweight and snappy.
This move brought a lot of enhancements, here's a very short list (there's more!):
0️⃣ Translating the docs to another language (i18n) is super easy now. Just take the original English page, translate it, and put the file in the appropriate folder. That's it, the next deployments would feature your translated page as if it was always there ✨
1️⃣ The search via
2️⃣ Fixed issues with highlighting of code blocks in the light mode. The similar change for
3️⃣
Things that didn't make the list include updates that are mostly relevant to the team and maintainers of the docs. For example:
1. It's much easier to influence the SEO of each page with good descriptions and image covers where needed
2. It's super easy to customize the docs with: CSS styles, JS scripts, Markdown pre-processing plugins, HTML pre-processing and post-processing plugins, ...
3. ...and so on and so forth
🧑🍳 Contributor: Novus Nota
🐙 Implementation: #880
✈️ Delivered: docs.tact-lang.org
🍲 Sparkle! Sunshine!
♨️ @tact_kitchen
There were a lot of things we just couldn't do nicely with the previous documentation library, Nextra. Granted, it's very good and has a lot going for it, but its rigidity in important places, as well as its overall pull towards Next.js and Vercel make some features like i18n almost impossible to implement while keeping the static build and not doing the server-side rendering.
It is finally time to move to a more flexible solution: Starlight, a documentation library powered by Astro that allows for great extensibility and bundles (among other things): advanced i18n support via i18next, site navigation, search, SEO, easy-to-read typography, code highlighting, dark mode and more. It's also very lightweight and snappy.
This move brought a lot of enhancements, here's a very short list (there's more!):
0️⃣ Translating the docs to another language (i18n) is super easy now. Just take the original English page, translate it, and put the file in the appropriate folder. That's it, the next deployments would feature your translated page as if it was always there ✨
1️⃣ The search via
Ctrl
+ K
(fuzzy full-site search) has been greatly improved. In addition, since all the pages are located in the sidebar, you now can use Ctrl
+ F
(content search) to quickly find the page in any of the sections: Book, Cookbook, and Ecosystem!2️⃣ Fixed issues with highlighting of code blocks in the light mode. The similar change for
inline
code highlighting will follow in the future too!3️⃣
tact-docs
repo has been merged into the Tact compiler one, which means that all new feature and standard library updates will arrive in docs much faster than before! Besides, you'll see badges like "Since version X.Y.Z" under each new feature, so that you'll know when to expect things and which Tact version to use for them :)Things that didn't make the list include updates that are mostly relevant to the team and maintainers of the docs. For example:
1. It's much easier to influence the SEO of each page with good descriptions and image covers where needed
2. It's super easy to customize the docs with: CSS styles, JS scripts, Markdown pre-processing plugins, HTML pre-processing and post-processing plugins, ...
3. ...and so on and so forth
🧑🍳 Contributor: Novus Nota
🐙 Implementation: #880
✈️ Delivered: docs.tact-lang.org
🍲 Sparkle! Sunshine!
♨️ @tact_kitchen
18.08.202401:36
🎉 Tact 1.4.4 has just landed on NPM!
Fixed a few bugs and added AST equality comparison API mostly for third-party tools, like the misti static smart-contract analyzer. The API also be used to compare contracts without taking into account whitespace, comments or even order of definitions and declarations.
More details as always can be found in the changelog.
— The Tact team
♨️ @tact_kitchen
Fixed a few bugs and added AST equality comparison API mostly for third-party tools, like the misti static smart-contract analyzer. The API also be used to compare contracts without taking into account whitespace, comments or even order of definitions and declarations.
More details as always can be found in the changelog.
— The Tact team
♨️ @tact_kitchen


17.01.202510:27
⚡️ Added AI prompts for Cursor and Windsurf to tact-template
Did you know, that there's a tact-template that comes pre-configured to kickstart your new Tact projects?
It is much slimmer than the Blueprint-based projects, and focused only on Tact: it includes the compiler, Sandbox-based Jest tests, and basic scripts and utils to get you started in no time!
🪄 And now, with the help of a community contributor, it also has neat system prompts designed specifically for AI-focused editors like Cursor and Windsurf. Utilize them to gain an edge over competition and aid yourself with prototyping smart contracts.
⚠️ That said, be mindful of the use of AI and make sure to thoroughly test and debug your smart contracts. Funds won't protect themselves 😅
🧑🍳🎉 Community contributor: Skuli Dropek
🐙 Implementation: #42
✈️ Delivered: tact-template
🍲 the 's' in ai stands for security
♨️ @tact_kitchen
Did you know, that there's a tact-template that comes pre-configured to kickstart your new Tact projects?
It is much slimmer than the Blueprint-based projects, and focused only on Tact: it includes the compiler, Sandbox-based Jest tests, and basic scripts and utils to get you started in no time!
🪄 And now, with the help of a community contributor, it also has neat system prompts designed specifically for AI-focused editors like Cursor and Windsurf. Utilize them to gain an edge over competition and aid yourself with prototyping smart contracts.
⚠️ That said, be mindful of the use of AI and make sure to thoroughly test and debug your smart contracts. Funds won't protect themselves 😅
🧑🍳🎉 Community contributor: Skuli Dropek
🐙 Implementation: #42
✈️ Delivered: tact-template
🍲 the 's' in ai stands for security
♨️ @tact_kitchen
22.09.202416:08
🎉 Misti 0.3 has just landed on NPM!
⚡️Tact 1.5 Support
🔍 Five New Tact Detectors: String Receivers Overlap, Asm Is Used, Preferred Stdlib API, Inherited State Mutation, Argument Copy Mutation.
🔧 Fixes & Enhancements: More configuration options, optimization and API improvements. Check out the full changelog.
♨️ @tact_kitchen
⚡️Tact 1.5 Support
🔍 Five New Tact Detectors: String Receivers Overlap, Asm Is Used, Preferred Stdlib API, Inherited State Mutation, Argument Copy Mutation.
🔧 Fixes & Enhancements: More configuration options, optimization and API improvements. Check out the full changelog.
♨️ @tact_kitchen
Не змогли отримати доступ
до медіаконтенту
до медіаконтенту
30.10.202409:32
⚡️ Added automatic links to Web IDE from code blocks in Cookbook section of the docs
Did you know, that just like the Remix for Ethereum, TON has an official Web IDE? If not, take a quick look at what it offers:
• Tact and FunC project creation
• Code highlighting and snippets for Tact and FunC
• Semi-automatic Build → Deploy pipeline on every save
• Convenient buttons to call getters and send messages to deployed contracts
• Deploy to Sandbox, testnet and mainnet
• Share button ↗️ on every file in a file tree
• ...plus a lot more!
And now any code samples from the Cookbook are right at your fingertips — just press the "Open in Web IDE" button, and the contents of the code block would automagically transfer to Web IDE!
🧑🍳 Contributor: Novus Nota
🐙 Implementation: #994
✈️ Delivered: docs.tact-lang.org/cookbook
🍲 «What's the TTP of Web IDE?»
♨️ @tact_kitchen
Did you know, that just like the Remix for Ethereum, TON has an official Web IDE? If not, take a quick look at what it offers:
• Tact and FunC project creation
• Code highlighting and snippets for Tact and FunC
• Semi-automatic Build → Deploy pipeline on every save
• Convenient buttons to call getters and send messages to deployed contracts
• Deploy to Sandbox, testnet and mainnet
• Share button ↗️ on every file in a file tree
• ...plus a lot more!
And now any code samples from the Cookbook are right at your fingertips — just press the "Open in Web IDE" button, and the contents of the code block would automagically transfer to Web IDE!
🧑🍳 Contributor: Novus Nota
🐙 Implementation: #994
✈️ Delivered: docs.tact-lang.org/cookbook
🍲 «What's the TTP of Web IDE?»
♨️ @tact_kitchen
Переслав з:
TON Dev News

15.09.202414:46
🎉 Tact v1.5.0 has just been released
The new Tact release v1.5.0 just landed on NPM! Here are the highlights of the most important features.
🛠 New Tact features
asm functions allow you to access the deep dark corners of TVM for more features or better performance:
- A wider range of serialization options for integers can now be used, not just 8, 16, 32, 64, 128 and 256-bit integers, but anything in between:
- Constant definitions now support calls to user-defined functions and references to other constants:
👩💻 New builtin and stdlib functions and methods
- The exists method for the
- The
- The
- The new
- The new stdlib functions to help with fee calculations:
- The
🐞 The new release also includes a bunch of bugfixes. Thanks to all the Tacticians for all the issues you open!
📜 Full changelog for Tact v1.5.0: https://github.com/tact-lang/tact/blob/main/CHANGELOG.md#150---2024-09-15
The new Tact release v1.5.0 just landed on NPM! Here are the highlights of the most important features.
🛠 New Tact features
asm functions allow you to access the deep dark corners of TVM for more features or better performance:
asm
functions have some limitations at this point and the Tact team will make them even more powerful in the next releases.- A wider range of serialization options for integers can now be used, not just 8, 16, 32, 64, 128 and 256-bit integers, but anything in between:
uint1
through uint256
and int1
through int257
. For instance, a 48-bit timestamp can be defined now if you'd like to build contracts that can work after the year 2038:
- Constant definitions now support calls to user-defined functions and references to other constants:
👩💻 New builtin and stdlib functions and methods
- The exists method for the
Map
type: m.exists(key)
which is equivalent to m.get(key) != null
.- The
deepEquals
method for the Map
type: m1.deepEquals(m2)
-- you can now easily compare two maps with the same key-value pairs and get true
as the result, even if their internal representations are different, so the hash-based ==
comparison would return false
.- The
toSlice
method for structs and messages: struct.toSlice()
.- The new
slice
, rawSlice
, ascii
and crc32
built-in compile-time functions to help you define constant integers and slices more conveniently.- The new stdlib functions to help with fee calculations:
gasConsumed
, getComputeFee
, getStorageFee
, getForwardFee
, getSimpleComputeFee
, getSimpleForwardFee
, getOriginalFwdFee
, myStorageDue
. This brings you access to the TVM instructions from 2023.07 and 2024.04 upgrades.- The
parseStdAddress
and parseVarAddress
stdlib functions allow you to parse slices into structured addresses.🐞 The new release also includes a bunch of bugfixes. Thanks to all the Tacticians for all the issues you open!
📜 Full changelog for Tact v1.5.0: https://github.com/tact-lang/tact/blob/main/CHANGELOG.md#150---2024-09-15
Показано 1 - 7 із 7
Увійдіть, щоб розблокувати більше функціональності.