Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>Vela by MainakNew to Visual Studio Code? Get it now.
Vela by Mainak

Vela by Mainak

MAINAK KUNDU

|
1 install
| (0) | Free
Language support for Vela: syntax highlighting, bracket matching, and file icons for .vela files.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Vela for Visual Studio Code

Language support for Vela — a small statically-typed language and its compiler (lexer, parser, type checker, tree-walking interpreter).

What you get

  • File icons for .vela files, in both light and dark themes.
  • Syntax highlighting for keywords, types, literals, operators, numbers, strings and comments.
  • Bracket matching and auto-closing for () and {}.
  • Comment toggling with // and /* */.

This extension is purely declarative — it contains no code, no build step and no dependencies. Everything is contributed through the manifest.

Install

From the Marketplace — search for Vela by Mainak in VS Code's Extensions view, or:

code --install-extension mainakkundu.vela-language

The listing is not called plain Vela because display names are unique across the whole Marketplace, and an unrelated extension already holds that one. The extension id is still vela-language, so the install command above never changes.

To install a local build instead, including one made from uncommitted changes:

cd editors/vscode
npx @vscode/vsce@4 package
code --install-extension vela-language-*.vsix

Language reference

Category Tokens
Declarations let, const, fn, struct
Control flow if, else, while, for, break, continue, return
Builtins print, tostring, tonumber, typeOf, len, trunc, floor, ceil, round, abs, min, max, idiv, read, upper, lower, trim, startsWith, endsWith, indexOf, substr, repeat, replace, append
Types number, string, bool, void, function
Literals true, false, null
Operators + - * / % ! = == != < <= > >= && \|\| ++ -- += -= *= /= %= -> ?
Punctuation ( ) { } [ ] , ; :
Comments //, /* */ (not nestable)
Numbers 123, 1_000_000, 3.14, 1.5e-3

? is the nullable suffix on a type — number?, Node?, number?[] — not a ternary, and Vela has no ?. or ??. It also marks an optional struct field when it follows the field's name — label?: string — so the same character is highlighted in both positions.

[ and ] are array brackets: a literal [1, 2], a type number[], or an index xs[0]. They highlight, but the extension does not auto-close them: [ opens on both of the first two, and auto-closing an index would fight the type bracket.

License

MIT. See LICENSE.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft