skillfed

tree-sitter-json

JSON grammar for tree-sitter

tree-sitter-json v0.24.8 3.5M downloads/30d#2,584 on PyPI204
Permissive license MIT AGING released

What it is and what it does

tree-sitter-json is a grammar definition for the tree-sitter incremental parser framework, focused on JSON documents. It does not parse JSON directly; instead, it provides the syntax rules that tree-sitter uses to build abstract syntax trees (ASTs) from JSON input. This is useful when you need structured analysis of JSON beyond simple deserialization—for example, to extract specific fields, validate structure, or perform linting without loading the entire document into memory.

The package is a compiled extension (available as prebuilt wheels for major platforms) with no runtime dependencies. It sits in the tree-sitter ecosystem alongside similar grammar packages for other languages. Installation requires Python 3.9 or later, and you'll need the tree-sitter Python bindings to actually use it.

Use it for:

  • Build a JSON linter or validator that reports precise error locations using the parse tree.
  • Extract specific nested fields from large JSON files without deserializing the entire document.
  • Implement syntax-aware JSON editing or refactoring tools that preserve formatting.
  • Analyze JSON structure programmatically for schema validation or transformation.
  • Create language-agnostic JSON tooling by leveraging tree-sitter's multi-language support.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Provides a JSON grammar parser for tree-sitter, enabling incremental parsing and syntax tree analysis of JSON documents.

Yes, if you are already using tree-sitter for code analysis and need to parse JSON as part of a larger workflow. No, if you simply need to read or validate JSON—use the standard library or a dedicated JSON library instead. The value is in incremental parsing and AST-based analysis, not in basic JSON handling.

Install

tree-sitter-json on PyPI

pip

pip install tree-sitter-json

uv

uv add tree-sitter-json

poetry

poetry add tree-sitter-json

Installing tree-sitter-json

Before you install

Medium install friction due to compiled wheels; prebuilt binaries available for common platforms (macOS, Linux x86_64/aarch64, Windows). Package is aging (641 days since last release) but repository remains active with recent commits.

License in practice

MIT license permits free use, modification, and distribution with minimal restrictions—suitable for both open-source and proprietary projects.

Quickstart

import tree_sitter_json

# tree_sitter_json provides the JSON grammar for tree-sitter
# Use with tree-sitter's Python bindings to parse JSON

Requires Python 3.9 or later; tree-sitter Python bindings must be installed separately to use this grammar.

Verify before relying

  • Whether tree-sitter Python bindings are automatically pulled in or must be installed separately.
  • Performance characteristics compared to standard JSON parsing libraries.
  • Specific use cases where incremental parsing of JSON provides measurable benefit.

Package facts

License MIT (permissive)
Python support supports the current Python release (>=3.9)
Install friction medium — platform-specific wheel
Runtime dependencies none
Maintenance aging — 641 days since the last release
Last repo commit
First released
Downloads 3,540,611/month — #2,584 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: tree_sitter_json-0.24.8-cp39-abi3-macosx_10_9_x86_64.whl; tree_sitter_json-0.24.8-cp39-abi3-macosx_11_0_arm64.whl; tree_sitter_json-0.24.8-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; tree_sitter_json-0.24.8-cp39-abi3-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl; tree_sitter_json-0.24.8-cp39-abi3-musllinux_1_2_x86_64.whl; tree_sitter_json-0.24.8-cp39-abi3-win_amd64.whl; tree_sitter_json-0.24.8-cp39-abi3-win_arm64.whl

Keywords: incremental, parsing, tree-sitter, json

Intended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseTopic :: Software Development :: CompilersTopic :: Text Processing :: LinguisticTyping :: Typed

Tags

tree-sitter json parserincremental json parsingjson syntax treetree-sitter grammarjson ast generationparse json incrementallyjson language binding
parser-generatorsyntax-treeincremental-parsing

More Linguistic packages