TEAL Visual Studio Code Extension

Hi and let’s discuss my retroactive proposal for the Visual Studio Code TEAL Extension.

Link to the proposal: TEAL Visual Studio Code Extension | xGov

The extension adds TEAL language support to the Visual Studio Code editor. It’s easy to install and begin with.

Why would developers ever want to use the extension?

As a developer on Algorand, you’re either working with the TEAL directly or (more probably) writing a high-level language code that compiles to TEAL. Dealing with the TEAL code is essential for optimization, auditing or reverse-engineering purposes. Not a developer yet and just curious how things work low-level? No worries. The extension will make your start easier by displaying suggestions, help, errors etc. while you’re typing or reading an existing code.

The helpful features are:

  • Accurate error reporting - integrates with go-algorand to display the same error details you would get while compiling the TEAL code for production but there’s no need to run a node at all

  • Code completion - suggests opcodes while typing or activated manually

  • Signature help - displays opcodes signature information popup

  • Hover info - documentation appears when hovering over an opcode

  • Go to definition - jump to a referenced label or define

  • Go to symbol - search and go to labels or defines

  • Document outline - see all the labels in the Outline view

  • Syntax highlighting - semantic-aware code highlighting

  • Rename symbol - rename labels directly or via references

  • Syntax validation - list syntax errors in the Problems tab

  • Create missing label - add a missing label, referenced by opcodes

  • Check for updates - automatically check for TEAL LSP server updates

  • AVM v12 - supports all the opcodes and fields up to the latest AVM version

  • Windows, Linux and macOS compatible

  • Works well with GitHub Codespaces!

All the code is open source and the relevant repositories are:

  1. GitHub - dragmz/teal - TEAL parser and LSP server implementation
  2. GitHub - dragmz/go-algorand at tealsp - tool integrating the LSP server with go-algorand
  3. GitHub - dragmz/tealsp - tool builds
  4. GitHub - dragmz/vscode-teal: Algorand TEAL language support for Visual Studio Code - VS Code extension source code
  5. TEAL - Visual Studio Marketplace - VS Code extension marketplace page

There’s no catch - take the code, build it all yourself if you like.

15 Likes

This is exciting! Good idea creating your proposal discussion thread ahead of time.

2 Likes

It would be helpful if you could provide the basis for the calculation of the grant amount. For example, if maintenance costs are included, I would like to know the period these costs cover, whether any future costs are included, and the proportion of development and maintenance expenses. In short, I would like to understand the scope and amount of costs that are eligible for the grant.

4 Likes

The amount requested is to cover the already completed development. No future costs are covered - the xGov period is retroactive. The “at least three months best effort maintenance” is an extra and not included in the amount.

5 Likes

This extension is invaluable for anyone analyzing TEAL. An easy ‘yes’ from me.

5 Likes

Вот улучшенная версия твоего комментария — теперь с аргументами, почему это реально важно:


This looks like one of those tools that quietly elevate the whole developer experience in the ecosystem. TEAL may not be everyone’s daily language, but every serious Algorand dev ends up touching it — for audits, optimizations, or debugging contracts compiled from PyTeal. Having a proper VS Code extension with real LSP support brings Algorand development closer to the standard tooling of mature ecosystems.

The practical value is clear:
• Working directly with TEAL has always been painful — no syntax highlighting, no navigation, no inline validation.
• This extension finally gives developers the same level of comfort Solidity or Rust developers already have.
• Support for AVM v12 ensures the tool is up-to-date with the latest Algorand stack.
• Open-source code and cross-platform compatibility make it accessible for teams auditing or optimizing on-chain logic.

I also appreciate that the grant request focuses only on the completed work. Retroactive proposals like this help recognize meaningful contributions without inflating future expectations. The clarity in scope and documentation makes this a very easy project to recommend.

4 Likes

Since I’m not an engineer, it’s difficult for me to review the code itself, but I can evaluate the other aspects.

TEAL is not a high-level language that is directly visible or intuitive, but understanding it is essential for developing production-level services. It is also listed as a recommended tool for installation in Algokit’s puya, and by reducing errors, it helps shorten development and auditing time, benefiting all developers. Moreover, if this tool had not been developed, it’s likely that Algorand Foundation or Algorand Technologies would have needed to create a similar one to improve developer experience. Considering the personnel costs that would have been incurred in that case, the current requested amount is quite reasonable.
The future maintenance costs I was concerned about in my previous comment are not included, and the proposal also meets the condition of being retroactive.

The only point that might be open for discussion, as far as I can think of, is how long the maintenance of this tool should continue to be supported by xGov grants as Algorand evolves. However, that is a future matter and separate from this retroactive proposal, so it cannot be a reason to reject the current one.

There have already been two positive comments from developers who have used this tool. Regardless of whether future feedback is positive or negative—for example, someone saying it didn’t help in their particular project—I think having more opinions from developers would make it easier for xGov voters to make informed decisions.

4 Likes

Yes, absolutely — it’s very useful.

Your Visual Studio Code TEAL Extension solves real problems developers face when working with Algorand smart contracts. TEAL is a low-level, assembly-like language, and without proper tools it’s difficult to write, debug, or audit. Your extension makes that process much easier, faster, and more accessible.

It helps both experienced Algorand developers and newcomers by providing syntax highlighting, opcode suggestions, error reporting, and direct integration with go-algorand — all without needing to run a node. That’s a huge time saver and a big step toward improving the developer experience in the Algorand ecosystem.

Since it’s open source, up-to-date with the latest AVM version, and compatible across all platforms, it’s also a long-term contribution that strengthens the overall ecosystem.
In short — yes, your project is very useful and valuable to the Algorand community.

4 Likes

TEAL lovers (me being one of them) have to vote YES for this proposal. This is a continuous effort and much needed to keep TEAL development alive, which is a very critical operational continuance requirement for Algorand IMHO. Big YES here.

2 Likes

Totally fair take. Keeping TEAL development active is definitely important for the long-term health of the ecosystem, and I respect anyone pushing for continuity at the protocol level. As long as the proposal delivers real maintenance and forward progress, a YES vote makes sense. Strong tooling is what keeps builders building.

1 Like