tree-sitter-c
C grammar for tree-sitter
What it is and what it does
tree-sitter-c is a grammar module for the tree-sitter parsing framework that provides syntax tree representation of C source code. It is adapted from the ISO C99 standard grammar and enables incremental parsing and structural code analysis. The package ships as precompiled binaries for common platforms (x86_64, ARM, Windows, macOS), reducing installation friction.
Developers use it to build tools that need to understand C code structure—linters, code formatters, refactoring tools, or static analysis systems. The package supplies only the C language grammar rules and requires the tree-sitter core framework to function. No runtime dependencies are declared in the package metadata.
Use it for:
- Build a C code linter or style checker that understands syntactic structure.
- Implement code analysis for an IDE or editor plugin.
- Extract function signatures or variable declarations from C source files.
- Create a code refactoring tool that preserves C syntax during transformations.
- Analyze C codebases for code quality or structural patterns.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides a C language grammar for tree-sitter, enabling incremental parsing and syntax tree analysis of C code.
Yes, if you need to parse or analyze C code and are already using tree-sitter. The grammar is actively maintained with no known vulnerabilities and ships with broad platform support. Requires Python 3.10 or later and the tree-sitter core framework to be available.
Install
tree-sitter-c on PyPI
pip
pip install tree-sitter-cuv
uv add tree-sitter-cpoetry
poetry add tree-sitter-cInstalling tree-sitter-c
Before you install
Medium install friction with precompiled wheels for major platforms. Active maintenance with last commit 2026-07-20. Requires Python 3.10 or later.
License in practice
MIT license permits unrestricted use, modification, and distribution in both open-source and proprietary projects.
Quickstart
pip install tree-sitter-c
Requires Python 3.10 or later; tree-sitter core library must be available separately.
Verify before relying
- Whether tree-sitter core is automatically installed as a dependency or must be installed separately.
- How to load and use the C grammar module once installed.
- Performance characteristics for parsing large C files or codebases.
- Compatibility with C standards beyond C99.
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | medium — platform-specific wheel |
| Runtime dependencies | none |
| Maintenance | actively maintained — 114 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 10,957,610/month — #1,423 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: tree_sitter_c-0.24.2-cp310-abi3-macosx_10_9_x86_64.whl; tree_sitter_c-0.24.2-cp310-abi3-macosx_11_0_arm64.whl; tree_sitter_c-0.24.2-cp310-abi3-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl; tree_sitter_c-0.24.2-cp310-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl; tree_sitter_c-0.24.2-cp310-abi3-musllinux_1_2_aarch64.whl; tree_sitter_c-0.24.2-cp310-abi3-musllinux_1_2_x86_64.whl; tree_sitter_c-0.24.2-cp310-abi3-win_amd64.whl; tree_sitter_c-0.24.2-cp310-abi3-win_arm64.whl
Keywords: incremental, parsing, tree-sitter, c
Tags
More Linguistic packages
Detects and normalizes text encoding from…
permissive · top 100 on PyPI
tiktokentiktoken is a fast BPE tokenizer that converts…
permissive · top 1,000 on PyPI
chardetDetects character encoding and language in byte…
permissive · top 1,000 on PyPI
text-unidecodeConverts Unicode text to ASCII by…
copyleft · top 1,000 on PyPI
larkLark is a parsing library that builds abstract…
permissive · top 1,000 on PyPI
tree-sitterPython bindings to the tree-sitter parsing…
permissive · top 1,000 on PyPI
tree-sitter-goProvides a Go language grammar for tree-sitter,…
permissive · top 5,000 on PyPI
tree-sitter-verilogProvides a SystemVerilog grammar parser for…
permissive · top 5,000 on PyPI
tree-sitter-pythonProvides a Python grammar for tree-sitter,…
permissive · top 5,000 on PyPI
tree-sitter-javaProvides a Java language grammar for…
permissive · top 5,000 on PyPI
pycparserpycparser is a C language parser written in…
permissive · top 100 on PyPI
tree-sitter-jsonProvides a JSON grammar parser for tree-sitter,…
permissive · top 5,000 on PyPI
tree-sitter-phpProvides a PHP language grammar for…
permissive · top 5,000 on PyPI
tree-sitter-fortranProvides a Fortran language grammar for…
permissive · top 5,000 on PyPI
tree-sitter-c-sharpProvides a C# language parser for tree-sitter,…
permissive · top 5,000 on PyPI
tree-sitter-cppProvides a C++ language grammar for…
permissive · top 5,000 on PyPI