--- id: tree-sitter-sql version: "0.3.11" license: MIT license_treatment: permissive maintenance: active --- # tree-sitter-sql — Tree-sitter Grammar for SQL License: permissive · Maintenance: active · Downloads: 2.2M/mo ## What it is and what it does tree-sitter-sql is a tree-sitter grammar module that enables parsing of SQL code into an abstract syntax tree. It provides a general, permissive SQL grammar designed to handle SQL syntax across multiple dialects, drawing from SQLite, PostgreSQL, and MariaDB references. The package is distributed as precompiled wheels for common platforms, reducing installation friction compared to building from source. The grammar itself is maintained separately from the parser implementation; the package installs the compiled parser binary that tree-sitter tools can use to analyze SQL code. It's intended for developers building SQL analysis tools, linters, formatters, or any system that needs to programmatically understand SQL structure. The package requires Python 3.10+ and has no runtime dependencies beyond tree-sitter itself. Use it for: - Build SQL linters or formatters that need to parse and understand SQL syntax structure. - Implement SQL code analysis tools that extract information about queries, tables, or columns. - Create IDE plugins or editor extensions that provide SQL syntax highlighting or error detection. - Develop database schema migration tools that parse and transform SQL DDL statements. - Analyze SQL query performance or security by examining the parsed syntax tree. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Provides a tree-sitter SQL grammar for parsing SQL code into an abstract syntax tree, enabling programmatic analysis and manipulation of SQL statements. Yes, if you need to parse SQL code programmatically and are already using tree-sitter. The package is actively maintained, has no known vulnerabilities, and uses a permissive MIT license. Install friction is moderate due to the requirement for Python 3.10+ and the need to pair it with tree-sitter bindings, but prebuilt wheels are available for common platforms. Not worth installing if you don't need tree-sitter integration or are on Python versions below 3.10. ## Install pip install tree-sitter-sql uv add tree-sitter-sql poetry add tree-sitter-sql ## Installing tree-sitter-sql Before you install: Medium install friction due to compiled wheels; prebuilt binaries available for common platforms (Linux x86_64/aarch64, macOS Intel/ARM, Windows x86_64/ARM) but requires Python 3.10+. Active maintenance with recent commits. License in practice: MIT license is permissive; you can use, modify, and distribute this package freely with minimal restrictions, making it suitable for both open-source and commercial projects. Quickstart: pip install tree-sitter-sql import tree_sitter_sql # Use with tree-sitter Python bindings to parse SQL Requires Python 3.10 or later; tree-sitter Python bindings must be installed separately to actually parse SQL. Verify before relying: - Whether this package includes Python bindings or only provides the grammar for use with external tree-sitter tooling. - Whether the package works with all SQL dialects or has specific limitations beyond what the description references (SQLite, PostgreSQL, MariaDB). ## Package facts - License: MIT (permissive) - Python support: supports_current - Install friction: medium - Maintenance: active - Downloads: 2.2M/month (top 5,000 on PyPI) - Known vulnerabilities: none known ## Tags SQL parser tree-sitter, parse SQL code AST, SQL syntax analysis, tree-sitter grammar SQL, SQL code parsing library, incremental SQL parsing, sql-parsing, tree-sitter, ast-generation [View on SkillFed](https://skillfed.io/packages/tree-sitter-sql) · [View on PyPI](https://pypi.org/project/tree-sitter-sql/)