{"id":25754764,"url":"https://github.com/tact-lang/tact-language-server","last_synced_at":"2025-06-25T02:40:08.066Z","repository":{"id":270152990,"uuid":"909472615","full_name":"tact-lang/tact-language-server","owner":"tact-lang","description":"⚡Tact Language Server and VS Code plugin","archived":false,"fork":false,"pushed_at":"2025-05-24T18:18:43.000Z","size":17947,"stargazers_count":19,"open_issues_count":52,"forks_count":6,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-05-24T18:36:46.662Z","etag":null,"topics":["language-server","lsp","tact","tact-lang","ton"],"latest_commit_sha":null,"homepage":"https://marketplace.visualstudio.com/items?itemName=tonstudio.vscode-tact","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tact-lang.png","metadata":{"files":{"readme":"README-extension.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-12-28T20:04:51.000Z","updated_at":"2025-05-24T18:18:46.000Z","dependencies_parsed_at":"2025-03-26T11:25:42.808Z","dependency_job_id":"098b85f6-1c8e-4d16-86c8-55b44eec551f","html_url":"https://github.com/tact-lang/tact-language-server","commit_stats":null,"previous_names":["i582/language-server","tact-lang/tact-language-server"],"tags_count":16,"template":false,"template_full_name":null,"purl":"pkg:github/tact-lang/tact-language-server","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tact-lang%2Ftact-language-server","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tact-lang%2Ftact-language-server/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tact-lang%2Ftact-language-server/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tact-lang%2Ftact-language-server/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tact-lang","download_url":"https://codeload.github.com/tact-lang/tact-language-server/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tact-lang%2Ftact-language-server/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261792704,"owners_count":23210349,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["language-server","lsp","tact","tact-lang","ton"],"created_at":"2025-02-26T16:00:55.193Z","updated_at":"2025-06-25T02:40:08.036Z","avatar_url":"https://github.com/tact-lang.png","language":"TypeScript","funding_links":[],"categories":["Plugins and extensions for editors and IDEs [↑](#contents)","🧑‍💻 Development"],"sub_categories":["Dev Tools"],"readme":"# Tact Language\n\nDeveloped by [TON Studio](https://tonstudio.io), powered by the community.\n\n**[Features] • [Installation] • [Community] • [Troubleshooting]**\n\n[Features]: #features\n[Installation]: #installation\n[Community]: #community\n[Troubleshooting]: #troubleshooting\n\n[![Twitter](https://img.shields.io/badge/X%2FTwitter-white?logo=x\u0026style=flat\u0026logoColor=gray)](https://x.com/tact_language)\n[![Telegram](https://img.shields.io/badge/Community_Chat-white?logo=telegram\u0026style=flat)](https://t.me/tactlang)\n[![Telegram](https://img.shields.io/badge/Tact_Kitchen_🥣-white?logo=telegram\u0026style=flat)](https://t.me/tact_kitchen)\n[![Visual Studio Marketplace Downloads](https://img.shields.io/visual-studio-marketplace/d/tonstudio.vscode-tact?color=white\u0026labelColor=white\u0026logo=tsnode\u0026logoColor=black)](https://marketplace.visualstudio.com/items?itemName=tonstudio.vscode-tact)\n[![Open VSX Downloads](https://img.shields.io/open-vsx/dt/tonstudio/vscode-tact?color=white\u0026labelColor=white\u0026logo=vscodium\u0026logoColor=black)](https://open-vsx.org/extension/tonstudio/vscode-tact)\n\n---\n\nThis extension for VSCode-based editors provides support for the [Tact programming language](https://tact-lang.org).\nTact is a next-generation programming language for building secure, scalable, and maintainable smart contracts on TON\nblockchain.\n\nIn addition to Tact, the extension provides support for Fift assembly, TL-B, and TON Bag-of-Cells (BoC) files.\n\n## Features\n\n- [Semantic syntax highlighting]\n- [Code completion] with [auto import], [postfix completion], snippets, [imports completion]\n- Go to [definition], implementation, [type definition]\n- Find all references, workspace symbol search, symbol renaming\n- Advanced navigation like [type-based search] and code lenses that let you jump to where each message is\n  sent and where it’s received\n- Automatic import updates when renaming and moving files\n- Types and documentation on hover\n- TL-B definition for messages, structs and contracts on hover\n- Beginner documentation for all keywords on hover\n- Inlay hints [for types], [parameter names], receiver opcodes and [more]\n- On-the-fly [inspections] with quick fixes\n- Signature help inside calls, `initOf` and struct initialization\n- [Lenses] with implementation/reference counts\n- [Gas estimates] for assembly functions\n- Build and test projects based on [Blueprint] and [Tact template]\n- Integration with [Tact compiler] and [Misti] static analyzer\n- Flexible [toolchain management]\n- Formatting\n- Fift Assembly:\n    - Basic and semantic syntax highlighting\n    - Go-to definitions\n    - Inlay hints with gas consumption for instructions\n    - Hover documentation for instructions\n- TL-B:\n    - Basic and semantic syntax highlighting\n    - Go-to definitions\n    - Completion for fields, parameters, and types\n    - Go-to references for types\n    - Document symbols with all declarations\n- TON Bag-of-Cells (BoC):\n    - Automatic BoC disassembly with syntax highlighting\n    - Automatic updates on BoC changes\n\n[Semantic syntax highlighting]: https://github.com/tact-lang/tact-language-server/blob/master/docs/manual/features/highlighting.md\n[Code completion]: https://github.com/tact-lang/tact-language-server/blob/master/docs/manual/features/completion.md\n[auto import]: https://github.com/tact-lang/tact-language-server/blob/master/docs/manual/features/completion.md#auto-import\n[postfix completion]: https://github.com/tact-lang/tact-language-server/blob/master/docs/manual/features/completion.md#postfix-completion\n[imports completion]: https://github.com/tact-lang/tact-language-server/blob/master/docs/manual/features/completion.md#imports-completion\n[definition]: https://github.com/tact-lang/tact-language-server/blob/master/docs/manual/features/navigation.md#go-to-definition\n[type definition]: https://github.com/tact-lang/tact-language-server/blob/master/docs/manual/features/navigation.md#go-to-type-definition\n[for types]: https://github.com/tact-lang/tact-language-server/blob/master/docs/manual/features/inlay-hints.md#type-hints\n[parameter names]: https://github.com/tact-lang/tact-language-server/blob/master/docs/manual/features/inlay-hints.md#parameter-hints\n[more]: https://github.com/tact-lang/tact-language-server/blob/master/docs/manual/features/inlay-hints.md#additional-hints\n[inspections]: https://github.com/tact-lang/tact-language-server/blob/master/docs/manual/features/inspections.md\n[Lenses]: https://github.com/tact-lang/tact-language-server/blob/master/docs/manual/features/code-lenses.md\n[Gas estimates]: https://github.com/tact-lang/tact-language-server/blob/master/docs/manual/features/gas-calculation.md\n[Blueprint]: https://docs.ton.org/v3/documentation/smart-contracts/getting-started/javascript\n[Tact template]: https://github.com/tact-lang/tact-template\n[Tact compiler]: https://github.com/tact-lang/tact\n[Misti]: https://nowarp.io/tools/misti/\n[type-based search]: https://github.com/tact-lang/tact-language-server/blob/master/docs/manual/features/type-based-search.md\n\n## Quick start\n\nThe easiest way to get started with Tact is in VS Code or editors based on it:\n\n1. Install the Tact language extension\n   [in VS Code](https://marketplace.visualstudio.com/items?itemName=tonstudio.vscode-tact)\n   or [in VS Code-based editors](https://open-vsx.org/extension/tonstudio/vscode-tact)\n2. Reload VS Code\n3. That's it!\n\n![editor.png](docs/manual/assets/editor.png)\n\n## Installation\n\n### VS Code / VSCodium / Cursor / Windsurf\n\n1. Get the latest `.vsix` file from [releases](https://github.com/tact-lang/tact-language-server/releases) from\n   [VS Code marketplace](https://marketplace.visualstudio.com/items?itemName=tonstudio.vscode-tact)\n   or from [Open VSX Registry](https://open-vsx.org/extension/tonstudio/vscode-tact)\n2. In VS Code:\n    - Open the Command Palette (`Ctrl+Shift+P` or `Cmd+Shift+P`)\n    - Type \"Install from VSIX\"\n    - Select the downloaded `.vsix` file\n    - Reload VS Code\n\nIf you use Cursor, Windsurf, or any other AI-powered editor, you can feed it the following content,\nspecifically created for LLMs:\n\n- https://docs.tact-lang.org/llms-full.txt — for full context\n- https://docs.tact-lang.org/llms-small.txt — for smaller context windows\n\n## Community\n\n- [`@tactlang` on Telegram](https://t.me/tactlang) - Main community chat and discussion group.\n- [`@tactlang_ru` on Telegram](https://t.me/tactlang_ru) _(Russian)_\n- [`@tact_kitchen` on Telegram](https://t.me/tact_kitchen) - Channel with updates from the team.\n- [`@tact_language` on X/Twitter](https://x.com/tact_language)\n- [`tact-lang` organization on GitHub](https://github.com/tact-lang)\n- [`@ton_studio` on Telegram](https://t.me/ton_studio)\n- [`@thetonstudio` on X/Twitter](https://x.com/thetonstudio)\n\n## Troubleshooting\n\nSee [TROUBLESHOOTING.md](docs/manual/troubleshooting.md).\n\n# License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftact-lang%2Ftact-language-server","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftact-lang%2Ftact-language-server","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftact-lang%2Ftact-language-server/lists"}