Web3 Development

Language Server (LSP Server) for Tact Development on Windows

Free, MIT-licensed LSP server for Tact on TON, with editor support for Sublime Text, Vim and Helix. Read about its deprecated status first.

Free Open source Windows: Likely v0.9.0 Updated 27 Jun 2026
9 min read Last update 27 Jun 2026 github.com/tact-lang/tact-language-server

Language Server, also listed as LSP Server, is a free, open source MIT-licensed tool that brings editor intelligence to Tact, the language used to write smart contracts on TON. It is aimed at developers who prefer Sublime Text, Neovim, Vim or Helix over a full integrated development environment.

Before you install it, know that the project is deprecated. The latest version is v0.9.0, and the code was last updated on June 27, 2026, but the repository itself points readers to newer guidance on TON contract development. The server still works as a practical reference for editor setup, though you should not expect new features or fixes.

02

What Is a Language Server and Why Editors Use One

A language server is a separate program that analyzes source code and answers questions from an editor. The editor, acting as a client, sends requests such as 'where is this function defined?' or 'what completions fit here?', and the server replies with results. The contract between the two sides is defined by the Language Server Protocol, usually called LSP.

This design means a single implementation can serve many editors. Instead of building separate plugins for Sublime Text, Vim, Neovim and Helix, developers can maintain one server that speaks the same protocol. For a niche language like Tact, that approach is practical because the community can concentrate its effort on one codebase.

The trade-off is configuration. Because the server runs outside the editor, you need to tell your editor where the server lives and how to start it. That step is what most setup guides cover, and it is the part that trips up newcomers the most.

03

Who Is This Language Server For?

The most natural audience is developers writing smart contracts for TON in Tact. If you already write code in a terminal-based editor, or you prefer a lightweight setup over a heavy IDE, the server lets you keep your workflow and still get completion, navigation and inline documentation.

It is also useful for people who are learning the language. Hover documentation explains each keyword, and TL-B definitions show how messages, structs and contracts are described. Reading these details next to your code can make the structure of a contract clearer than reading reference pages alone.

Teams that work across several editors may find the server helpful for consistency. When different members use different tools, a shared LSP server produces similar navigation and diagnostics, which reduces surprises during code review.

04

Practical Scenarios Where Editor Intelligence Helps

Imagine you need to rename a message type used across several files. With symbol renaming and automatic import updates, the change propagates without manual edits to every import line. That saves time and reduces the risk of a missed reference that only fails at build time.

Another common case is reading unfamiliar code. Go to definition lets you follow a function from its call site to its implementation, and find all references shows where a struct is used. Together, these commands turn a long code review into a series of quick jumps.

Signature help is handy when you write a call with several arguments and cannot remember their order. Inlay hints can show parameter names directly in the code, which makes it easier to check a call at a glance during debugging.

05

Key features

Semantic syntax highlighting and inlay hints

The server colors Tact code based on what each symbol actually is, not just on keywords. Inlay hints display inferred types, parameter names and receiver opcodes inline, so you can read a call without hovering over every element.

Code completion with auto import

Completion suggests names as you type and includes snippets, postfix completion and imports completion. When you choose a symbol defined in another file, the matching import can be added for you, which saves time in larger projects.

Definitions, implementations and references

You can go to a definition, an implementation or a type definition, and find every reference to a symbol across the workspace. Workspace symbol search helps you locate declarations quickly when a project grows.

Type-based search and code lenses

Advanced navigation lets you search by type, and code lenses link to the places where each message is handled. This is especially useful in contracts with many message types that pass data between each other.

Safe renaming and file moves

Renaming a symbol or moving a file updates the affected imports automatically. Because the server tracks references across the project, you rarely need to hunt through files by hand after a refactor, which reduces the chance of broken references.

Hover documentation and TL-B definitions

Hovering over code shows types and documentation, along with TL-B definitions for messages, structs and contracts. Beginner-friendly explanations of every keyword make the server useful for people learning TON-specific syntax.

On-the-fly inspections with quick fixes

Inspections run as you edit rather than only at build time, so problems surface early. Many issues come with quick fixes, but review each suggested change before applying it, since an automatic correction may differ from what you intended.

Signature help in calls and initializers

The server shows parameter information inside function calls, initOf expressions and struct initialization. It helps most when a function takes several arguments or a struct has many fields, where a missed value is easy to overlook.
06

Supported coins

The server is focused on Tact, the language used to write smart contracts on TON. If your project relies on Solidity or on Rust-based frameworks such as Anchor, you will need a different tool for those files, because this server does not cover them.

07

How to install Language Server (LSP Server) on Windows

  1. 1

    Open the official releases page

    Go to the project's Releases page on GitHub. The latest listed version is v0.9.0. Download only from the official website, meaning the project's GitHub repository, and avoid copies hosted on third-party download sites.

  2. 2

    Find the Windows build

    Look for the zip archive labeled for Windows, named along the lines of tact-language-server followed by the version number. Windows support is described as likely rather than guaranteed, so confirm that the zip is present in the release before you download it.

  3. 3

    Extract the archive

    Unzip the file into a permanent folder, such as a subfolder of your user directory. Choose a simple path without unusual characters, because your editor configuration will point to the server inside that folder.

  4. Connect the server to your editor

    Point your editor's LSP client at the extracted server. Neovim users can follow the nvim-lspconfig example in the How to Use section, while other editors need an LSP client plugin that accepts a custom server path.

08

System requirements

  • Windows, using the server zip from the project's GitHub Releases page
  • An editor with LSP client support, such as Neovim with the nvim-lspconfig plugin
09

How to use Language Server (LSP Server)

Once the server is extracted, your editor needs to start it whenever you open a Tact file. The example below uses Neovim and the nvim-lspconfig plugin, which is the setup the project's own notes describe.

  1. Install the nvim-lspconfig plugin with your usual Neovim plugin manager.
  2. Add the following lines to your Neovim configuration: local util = require 'lspconfig.util' and then require'lspconfig'.tact.setup {}.
  3. Make sure the extracted server is reachable from the path your configuration expects, then restart Neovim.
  4. Open a Tact file and check that syntax highlighting and inlay hints appear.
  5. Hover over a keyword to read its documentation, then use go to definition on a symbol from another file.
  6. Rename a symbol that is used in several files and confirm that the imports update automatically.

If something does not work, first check the server path and your editor's log output. Most setup issues come from a wrong path rather than from the server itself.

10

Pros & cons

Pros
  • Covers highlighting, completion, navigation, inspections and hover documentation in one server
  • Free and MIT-licensed, so the code can be read, modified and reused under the license terms
  • Works with several LSP-capable editors, including Sublime Text, Vim, Neovim and Helix
  • Hover documentation and TL-B definitions help newcomers learn TON-specific syntax
  • Open source code on GitHub lets you inspect how features behave
Cons
  • Marked as deprecated, so new features and fixes are unlikely
  • Windows support is described as likely, so you must check each release for a Windows build
  • Manual editor configuration can be a barrier for less experienced users
  • Focused on Tact, so it does not help with other smart contract languages
11

Is Language Server (LSP Server) safe?

Download only from the official website, which for this project means its GitHub repository and Releases page. Avoid copies on third-party download sites, because altered archives can be bundled with unwanted code. When the release provides a SHA-256 checksum or a signature, verify the downloaded file against the value published on the official page before you extract it.

The server does not handle wallets, seed phrases or funds, but one rule still applies to any blockchain tool: never enter a seed phrase on a third-party website. The project is deprecated and its updates have stopped, so review the code history on GitHub before relying on it in professional work.

  • Official source only. Download from github.com/tact-lang/tact-language-server. Ignore ads and lookalike domains.
  • Check the SHA-256. Compare the installer hash with the value the developer publishes before running it.
  • Never share your seed phrase. No developer, support agent or website — including CryptApps — will ever ask for it.
12

Alternatives

Compared with Visual Studio Code with Solidity extensions, Language Server is a narrower tool. It adds editor intelligence through the LSP standard and nothing more, and it targets Tact on TON rather than Solidity on EVM-compatible chains. If you want an integrated environment with more built-in features, the Visual Studio Code setup is a better fit.

Remix Desktop and Foundry cover broader workflows such as compiling, testing and deploying, which this server does not address. Anchor serves Solana programs, a different ecosystem altogether. If you use Sublime Text, Vim or Helix and write Tact, Language Server is the more direct choice for editing support.

13

Specifications

Price
Free
Type
Open source
License
MIT
Latest version
v0.9.0
Last update
27 Jun 2026
Windows support
Likely (builds for Windows; check releases)
Source code
github.com/tact-lang/tact-language-server
14

Frequently asked questions

Yes. Language Server is listed as free and open source under the MIT license, so you can download and use it without paying. The license also lets you read, modify and redistribute the code under its terms. Check the full license text in the repository before reusing the code in a commercial product.

Likely, but confirm it for each release. The project's GitHub Releases page includes a Windows zip archive, which you can download and extract. Because Windows support is not guaranteed for every version, look for the Windows file before you start, and use the newest release the page lists.

It can be, if you download from the official GitHub Releases page and verify the file. Check the SHA-256 checksum or signature when the release provides one. Because the project is deprecated and no longer receives regular updates, review its code history before depending on it for important work.

It supports Sublime Text, (Neo)Vim, Helix and other editors that implement the Language Server Protocol. Neovim setup uses the nvim-lspconfig plugin, while other editors need an LSP client configured to start the server. Each editor handles configuration slightly differently, so consult its documentation.

It supports Tact, the language used to write smart contracts on TON. It is not intended for Solidity or for Anchor-based Rust projects, so use a dedicated tool for those. If your project mixes languages, you may need one editor setup for Tact and another for the rest.

No. A language server provides editing features such as completion, navigation, hover documentation and inspections, but it does not replace the compiler or build tools. Use the separate Tact toolchain for compiling and testing contracts, and use the server to write and review the code.

The repository is marked deprecated and directs readers to newer guidance on TON contract development. Check that guidance before starting new work, and treat this server as a reference for editor setup rather than a long-term dependency for your projects.

15

Verdict

Language Server is a worthwhile free tool for developers who write Tact contracts on TON and prefer Sublime Text, Vim, Neovim or Helix. Its highlighting, completion, navigation and hover documentation cover most day-to-day editing needs. The project is deprecated, though, so treat it as a reference or a stopgap rather than a foundation for long-term work. Confirm the latest version on the official website before installing.

Download now