Tree-sitter Parser Generator

Tree-sitter Parser Generator

github.com

2

About this website

Tree-sitter is an incremental parsing system and error-recovery tool designed for programming tools that need to parse source code efficiently. Originally developed at GitHub by Max Brunsfeld, Tree-sitter has over 20,000 stars as of 2026 and is used by GitHub for code navigation, Neovim and Helix for syntax highlighting, Zed editor for code intelligence, and many other editors. Key features include: incremental parsing (re-parsing only affected portions when a document changes, enabling O(log n) parsing for single-character edits, ideal for real-time editor integration), error recovery (producing meaningful parse trees even for syntactically incorrect code, essential for editor integration during typing), GLR parsing (Generalized LR algorithm handling ambiguous grammars via multiple parse trees with precedence resolution), grammar definition (JavaScript DSL with regex-like lexing and BNF-like parsing rules), multi-language support (over 100 community-maintained grammars for JavaScript, TypeScript, Python, Rust, Go, C, C++, Java, Ruby, PHP, HTML, CSS, SQL, Bash, JSON, YAML, and more), query language (powerful pattern-matching DSL for syntax highlighting, code folding, and structural navigation), bindings (C, Rust, Go, Node.js, Python, Ruby, Swift, WebAssembly), node types and fields (automatic TypeScript definitions for type-safe AST manipulation), and ABI stability (stable grammar ABI ensuring pre-compiled binaries work across tool versions).

Tags & Categories

Statistics

2
Views
0
Clicks
0
Like
0
Dislike

Comments

Log In to post a comment

No comments yet. Be the first!