SaaSHub helps you find the best software and product alternatives Learn more →
Tree-sitter Alternatives
Similar projects and alternatives to tree-sitter
-
-
InfluxDB
InfluxDB – Built for High-Performance Time Series Workloads. InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.
-
-
-
-
-
-
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
-
-
packer.nvim
A use-package inspired plugin manager for Neovim. Uses native packages, supports Luarocks dependencies, written in Lua, allows for expressive config
-
-
-
-
-
-
-
Comment.nvim
:brain: :muscle: // Smart and powerful comment plugin for neovim. Supports treesitter, dot repeat, left-right/up-down motions, hooks, and more
-
-
-
-
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
tree-sitter discussion
tree-sitter reviews and mentions
-
Decoding Tree-sitter Playground Output For Fun
Paste this into the Playground (try it here). You’ll get something like:
-
Diving into Tree-Sitter: Parsing Code with Python Like a Pro
This code sets up a parser for Python code. The tree-sitter-python package provides a precompiled grammar, so no manual compilation is needed. If you’re targeting another language, check for its grammar package on Tree-Sitter Wiki.
-
Making Sense of tree-sitter's C API
The API is defined in tree_sitter/api.h (available on GitHub). It revolves around a few key concepts: parsers, trees, nodes, and queries. Let’s dive into the essentials.
-
Want AI to Actually Understand Your Code? This Tool Says It Can Help
Tree-sitter is a parser generator tool and an incremental parsing library, it is available in Rust 🦀 - GitHub. CocoIndex has built-in Rust integration with Tree-sitter to efficiently parse code and extract syntax trees for various programming languages.
-
Emacs Tree-sitter custom highlighting
I think the main problem is that highligthing framework used by tree-sitter (https://github.com/tree-sitter/tree-sitter/tree/master/highl...) is not easily pluggable into emacs font-lock-mode.
-
Highlighting Parts of Lua as Bash
Although I am not certain if tree-sitter allows matching on comments, but https://github.com/tree-sitter/tree-sitter/issues/1138 seems to imply that it does
-
I wrote my own "proper" programming language
Hard agree. Even without going deep on a "serious language" there's a universe of DSLs that's mostly unexplored.
Debuggers are the outlier in your group but there's not exactly a void for those other wishes. As just one slice, building a tree-sitter [1] grammar gives the basis for good editor integration [2], formatters [3], structural diff [4] and other dev tools. Similarly if you're expressing some form of program, mapping to LLVM IR connects your creation with a fairly extensive compiler toolchain.
Language agnostic tooling exists, but there still needs to be some abstraction layer.
[1]: https://tree-sitter.github.io/
[2]: https://zed.dev/blog/syntax-aware-editing
[3]: https://topiary.tweag.io
[4]: https://difftastic.wilfred.me.uk
-
Tbsp – treesitter-based source processing language
For those that want to explore the grammars listed at https://github.com/tree-sitter/tree-sitter/wiki/List-of-pars... in a more friendly railroad diagram format I made https://mingodad.github.io/plgh/json2ebnf.html that reads the "src/grammar.json" and try it's best to generate an EBNF understood by (IPV6) https://www.bottlecaps.de/rr/ui or (IPV4) https://rr.red-dove.com/ui where we get a nice navigable railroad diagram (see https://github.com/GuntherRademacher/rr for offline usage).
-
Pragtical: The practical and pragmatic code editor
https://github.com/pragtical/plugins/commit/54096a6461f5c034... makes me long for The One Grammar To Rule Them ™
I thought for a while that TextMate bundles[1] were that, especially since JetBrains[2], Linguist[3] and VSCode[4] honor them. However, in the spirit of "the good thing about standards ..." highlight.js does[5] almost the same thing that Pragtical does which makes me feel even worse
I had high hopes for Tree-Sitter since it seems to have really won mindshare, but the idea of having an executable grammar spec[6] is ... well, no wonder it hasn't caught on outside of that specific ecosystem
1: https://github.com/rspec/rspec.tmbundle/blob/1.1.12/Syntaxes...
2: https://github.com/JetBrains/intellij-community/blob/idea/24...
3: https://github.com/github-linguist/linguist/blob/v7.30.0/lib...
4: https://github.com/microsoft/vscode-textmate
5: https://github.com/highlightjs/highlight.js/blob/11.10.0/src...
6: https://github.com/tree-sitter/tree-sitter/blob/v0.22.6/test...
-
Rust for Filesystems
If you like to see some examples of C bindings:
https://github.com/tree-sitter/tree-sitter/blob/25c718918084...
-
A note from our sponsor - SaaSHub
www.saashub.com | 18 May 2025
Stats
tree-sitter/tree-sitter is an open source project licensed under MIT License which is an OSI approved license.
The primary programming language of tree-sitter is Rust.
Popular Comparisons
- tree-sitter VS PHP Parser
- tree-sitter VS nvim-treesitter
- tree-sitter VS sourcegraph
- tree-sitter VS indent-blankline.nvim
- tree-sitter VS language-server-protocol
- tree-sitter VS coc-rust-analyzer
- tree-sitter VS csharp-mode
- tree-sitter VS coc-explorer
- tree-sitter VS lezer
- tree-sitter VS Visual Studio Code