tree-sitter

    tree-sitter/tree-sitter

    #79 this week

    An incremental parsing system for programming tools

    backend
    c
    incremental
    parser
    parsing
    rust
    Rust
    MIT
    26.3K stars
    2.8K forks
    26.3K GitHub watchers
    Updated 7/18/2026
    View on GitHub

    Backblaze Generative Media Hackathon

    Build the next generation of AI media apps with Genblaze, stored on Backblaze B2. $10,000 in prizes.

    Enter the hackathon

    Loading star history...

    Use Cases & Benefits

    • Tree-sitter is an incremental parsing system designed for building and updating syntax trees efficiently in programming tools.
    • Key technologies include Rust for bindings, a pure C runtime for embedding, and support for WebAssembly and command-line interfaces.
    • Strengths are its speed, robustness against syntax errors, generality for any language, and zero runtime dependencies.
    • With over 21,850 stars and 2,032 forks, it shows strong adoption and community support in the developer ecosystem.
    • Ideal for text editors, IDEs, and tools requiring real-time syntax analysis and incremental parsing of source code.

    About tree-sitter

    tree-sitter

    DOI discord matrix

    Tree-sitter is a parser generator tool and an incremental parsing library. It can build a concrete syntax tree for a source file and efficiently update the syntax tree as the source file is edited. Tree-sitter aims to be:

    • General enough to parse any programming language
    • Fast enough to parse on every keystroke in a text editor
    • Robust enough to provide useful results even in the presence of syntax errors
    • Dependency-free so that the runtime library (which is written in pure C) can be embedded in any application

    Discover Repositories

    Search across tracked repositories by name or description