# Tree-sitter ## Docs - [Code Navigation](https://mintlify.wiki/tree-sitter/tree-sitter/advanced/code-navigation.md): Use Tree-sitter's tagging system for code navigation, symbol search, and language servers. - [Implementation Details](https://mintlify.wiki/tree-sitter/tree-sitter/advanced/implementation.md): Understanding Tree-sitter's internal architecture, from grammar compilation to runtime parsing. - [Performance Optimization](https://mintlify.wiki/tree-sitter/tree-sitter/advanced/performance.md): Best practices and techniques for maximizing Tree-sitter performance in production applications. - [Syntax Highlighting](https://mintlify.wiki/tree-sitter/tree-sitter/advanced/syntax-highlighting.md): Learn how Tree-sitter's built-in syntax highlighting system works, including highlight queries, local variables, and language injection. - [Language API](https://mintlify.wiki/tree-sitter/tree-sitter/api/c-api/language.md): Functions for accessing language metadata and information - [Node API](https://mintlify.wiki/tree-sitter/tree-sitter/api/c-api/node.md): Functions for inspecting and traversing syntax tree nodes - [C API overview](https://mintlify.wiki/tree-sitter/tree-sitter/api/c-api/overview.md): Overview of the Tree-sitter C API for parsing and syntax tree manipulation - [Parser API](https://mintlify.wiki/tree-sitter/tree-sitter/api/c-api/parser.md): Functions for creating parsers and parsing source code - [Query API](https://mintlify.wiki/tree-sitter/tree-sitter/api/c-api/query.md): Functions for creating and executing queries on syntax trees - [Tree API](https://mintlify.wiki/tree-sitter/tree-sitter/api/c-api/tree.md): Functions for working with syntax trees - [Node Class](https://mintlify.wiki/tree-sitter/tree-sitter/api/javascript/node.md): API reference for the Tree-sitter Node class in JavaScript/Wasm - [JavaScript/Wasm API Overview](https://mintlify.wiki/tree-sitter/tree-sitter/api/javascript/overview.md): Overview of the Tree-sitter JavaScript and WebAssembly bindings - [Parser Class](https://mintlify.wiki/tree-sitter/tree-sitter/api/javascript/parser.md): API reference for the Tree-sitter Parser class in JavaScript/Wasm - [Query API](https://mintlify.wiki/tree-sitter/tree-sitter/api/javascript/query.md): API reference for the Tree-sitter Query class in JavaScript/Wasm - [Tree Class](https://mintlify.wiki/tree-sitter/tree-sitter/api/javascript/tree.md): API reference for the Tree-sitter Tree class in JavaScript/Wasm - [Language API](https://mintlify.wiki/tree-sitter/tree-sitter/api/rust/language.md): API reference for the Language struct - [Node](https://mintlify.wiki/tree-sitter/tree-sitter/api/rust/node.md): API reference for the Node struct - [Rust Bindings Overview](https://mintlify.wiki/tree-sitter/tree-sitter/api/rust/overview.md): Overview of the Tree-sitter Rust bindings - [Parser](https://mintlify.wiki/tree-sitter/tree-sitter/api/rust/parser.md): API reference for the Parser struct - [Query API](https://mintlify.wiki/tree-sitter/tree-sitter/api/rust/query.md): API reference for Tree-sitter queries in Rust - [Tree](https://mintlify.wiki/tree-sitter/tree-sitter/api/rust/tree.md): API reference for the Tree struct - [Wasm Support](https://mintlify.wiki/tree-sitter/tree-sitter/api/rust/wasm.md): API reference for WebAssembly grammar support in Rust - [build](https://mintlify.wiki/tree-sitter/tree-sitter/cli/build.md): Compile a parser into a dynamically-loadable library - [complete](https://mintlify.wiki/tree-sitter/tree-sitter/cli/complete.md): Generate shell completions for the Tree-sitter CLI - [dump-languages](https://mintlify.wiki/tree-sitter/tree-sitter/cli/dump-languages.md): Print info about all known language parsers - [fuzz](https://mintlify.wiki/tree-sitter/tree-sitter/cli/fuzz.md): Fuzz a parser to find bugs and ensure consistency - [generate](https://mintlify.wiki/tree-sitter/tree-sitter/cli/generate.md): Generate a parser from a grammar - [highlight](https://mintlify.wiki/tree-sitter/tree-sitter/cli/highlight.md): Highlight a file using syntax highlighting - [init](https://mintlify.wiki/tree-sitter/tree-sitter/cli/init.md): Initialize a grammar repository - [init-config](https://mintlify.wiki/tree-sitter/tree-sitter/cli/init-config.md): Initialize a configuration file for the Tree-sitter CLI - [Installation](https://mintlify.wiki/tree-sitter/tree-sitter/cli/installation.md): How to install the Tree-sitter CLI - [CLI Overview](https://mintlify.wiki/tree-sitter/tree-sitter/cli/overview.md): Overview of the Tree-sitter command-line interface - [parse](https://mintlify.wiki/tree-sitter/tree-sitter/cli/parse.md): Parse source files using a Tree-sitter parser - [playground](https://mintlify.wiki/tree-sitter/tree-sitter/cli/playground.md): Start a local playground to test your parser interactively - [query](https://mintlify.wiki/tree-sitter/tree-sitter/cli/query.md): Search files using a syntax tree query - [tags](https://mintlify.wiki/tree-sitter/tree-sitter/cli/tags.md): Generate a list of tags for symbol navigation - [test](https://mintlify.wiki/tree-sitter/tree-sitter/cli/test.md): Run a parser's tests - [version](https://mintlify.wiki/tree-sitter/tree-sitter/cli/version.md): Display or increment the version of a grammar - [External Scanners](https://mintlify.wiki/tree-sitter/tree-sitter/creating-parsers/external-scanners.md): Handle complex lexical rules with custom C code - [Getting Started](https://mintlify.wiki/tree-sitter/tree-sitter/creating-parsers/getting-started.md): Set up your development environment and create your first Tree-sitter parser - [Grammar DSL Reference](https://mintlify.wiki/tree-sitter/tree-sitter/creating-parsers/grammar-dsl.md): Complete reference for Tree-sitter's grammar definition language - [Creating Parsers Overview](https://mintlify.wiki/tree-sitter/tree-sitter/creating-parsers/overview.md): Learn how to develop Tree-sitter grammars and create powerful parsers for programming languages - [Publishing Parsers](https://mintlify.wiki/tree-sitter/tree-sitter/creating-parsers/publishing.md): Share your Tree-sitter parser with the community - [Testing Parsers](https://mintlify.wiki/tree-sitter/tree-sitter/creating-parsers/testing.md): Write comprehensive tests for your Tree-sitter parser - [Writing Grammar Rules](https://mintlify.wiki/tree-sitter/tree-sitter/creating-parsers/writing-grammar.md): Best practices and techniques for structuring effective Tree-sitter grammars - [Installation](https://mintlify.wiki/tree-sitter/tree-sitter/installation.md): Install Tree-sitter for your preferred language and platform - [Introduction to Tree-sitter](https://mintlify.wiki/tree-sitter/tree-sitter/introduction.md): A parser generator tool and incremental parsing library for building fast, robust syntax trees - [Query API Reference](https://mintlify.wiki/tree-sitter/tree-sitter/queries/api.md): C API reference for creating and executing Tree-sitter queries - [Query Operators](https://mintlify.wiki/tree-sitter/tree-sitter/queries/operators.md): Use operators to capture nodes, quantify patterns, group siblings, and control matching behavior - [Pattern Matching with Queries](https://mintlify.wiki/tree-sitter/tree-sitter/queries/overview.md): Learn how to use Tree-sitter's query language to find and match specific patterns in source code - [Predicates and Directives](https://mintlify.wiki/tree-sitter/tree-sitter/queries/predicates.md): Add conditions, filters, and metadata to query patterns using predicates and directives - [Query Syntax](https://mintlify.wiki/tree-sitter/tree-sitter/queries/syntax.md): Master the fundamental syntax for writing Tree-sitter query patterns - [Quick start](https://mintlify.wiki/tree-sitter/tree-sitter/quickstart.md): Get up and running with Tree-sitter in minutes - [Community & Support](https://mintlify.wiki/tree-sitter/tree-sitter/resources/community.md): Connect with the Tree-sitter community and get support - [Contributing](https://mintlify.wiki/tree-sitter/tree-sitter/resources/contributing.md): Guide to contributing to Tree-sitter development - [Available Parsers](https://mintlify.wiki/tree-sitter/tree-sitter/resources/parsers.md): List of official and community-maintained Tree-sitter parsers - [Web Playground](https://mintlify.wiki/tree-sitter/tree-sitter/resources/playground.md): Interactive web playground for testing Tree-sitter parsers - [ABI Versioning](https://mintlify.wiki/tree-sitter/tree-sitter/using-parsers/abi-versions.md): Understanding parser compatibility and ABI version requirements - [Advanced Parsing](https://mintlify.wiki/tree-sitter/tree-sitter/using-parsers/advanced-parsing.md): Incremental parsing, editing, multi-language documents, and concurrency - [Basic Parsing](https://mintlify.wiki/tree-sitter/tree-sitter/using-parsers/basic-parsing.md): Learn how to parse source code and work with syntax nodes - [Using Parsers - Overview](https://mintlify.wiki/tree-sitter/tree-sitter/using-parsers/overview.md): Learn how to use Tree-sitter parsers in your applications - [Pattern Matching with Queries](https://mintlify.wiki/tree-sitter/tree-sitter/using-parsers/pattern-matching.md): Search and match code patterns using Tree-sitter's query language - [Static Node Types](https://mintlify.wiki/tree-sitter/tree-sitter/using-parsers/static-node-types.md): Using node-types.json for type safety and code generation - [Walking Trees with Tree Cursors](https://mintlify.wiki/tree-sitter/tree-sitter/using-parsers/walking-trees.md): Efficiently traverse syntax trees using tree cursors