skillfed

tree-sitter-javascript

JavaScript grammar for tree-sitter

tree-sitter-javascript v0.25.0 15.2M downloads/30d#1,198 on PyPI489
Permissive license MIT AGING released

What it is and what it does

tree-sitter-javascript is a language grammar binding that brings JavaScript and JSX parsing to the tree-sitter incremental parser framework. It translates JavaScript source code into syntax trees that can be queried and analyzed programmatically, following the ECMAScript specification with extensions for JSX. The package ships as precompiled wheels for multiple platforms, so installation is straightforward on supported architectures.

You use it when you need to parse, analyze, or manipulate JavaScript code at the syntax level—extracting function definitions, traversing AST nodes, or building code analysis tools. It integrates with the broader tree-sitter ecosystem, which provides query languages and incremental re-parsing for efficient updates when code changes.

Use it for:

  • Build linters or code quality tools that need to traverse JavaScript syntax trees
  • Extract metadata from JavaScript files (function names, imports, exports) for documentation or refactoring
  • Implement syntax-aware code editors or IDE features using incremental parsing
  • Analyze JavaScript codebases for security patterns or architectural violations
  • Generate code transformations or automated refactoring by matching and rewriting AST nodes

Worth the install?

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

Provides a JavaScript and JSX parser grammar for tree-sitter, enabling incremental parsing and syntax tree analysis of JavaScript code.

Yes, if you are building JavaScript analysis or transformation tools and want a standards-aligned parser. The MIT license is permissive, prebuilt wheels reduce friction, and the grammar tracks ECMAScript closely. The aging maintenance status (347 days since last release) is a minor concern for a stable grammar—monitor the repository for critical updates, but this is a mature, dependency-free binding suitable for production use.

Install

tree-sitter-javascript on PyPI

pip

pip install tree-sitter-javascript

uv

uv add tree-sitter-javascript

poetry

poetry add tree-sitter-javascript

Installing tree-sitter-javascript

Before you install

Medium install friction due to compiled wheels; prebuilt binaries available for common platforms but requires Python 3.10+. Last release was 347 days ago; repository is active but aging.

License in practice

MIT license permits unrestricted use, modification, and distribution in commercial and private projects with minimal obligations.

Quickstart

pip install tree-sitter-javascript
import tree_sitter_javascript
# Use with tree-sitter parser to parse JavaScript code

Requires Python 3.10 or later

Verify before relying

  • Completeness of ECMAScript 2025 feature support relative to the full specification
  • Performance characteristics and memory footprint for large codebases
  • Stability and breaking changes across minor version increments

Package facts

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

Evidence: tree_sitter_javascript-0.25.0-cp310-abi3-macosx_10_9_x86_64.whl; tree_sitter_javascript-0.25.0-cp310-abi3-macosx_11_0_arm64.whl; tree_sitter_javascript-0.25.0-cp310-abi3-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl; tree_sitter_javascript-0.25.0-cp310-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl; tree_sitter_javascript-0.25.0-cp310-abi3-musllinux_1_2_aarch64.whl; tree_sitter_javascript-0.25.0-cp310-abi3-musllinux_1_2_x86_64.whl; tree_sitter_javascript-0.25.0-cp310-abi3-win_amd64.whl; tree_sitter_javascript-0.25.0-cp310-abi3-win_arm64.whl

Keywords: incremental, parsing, tree-sitter, javascript

Intended Audience :: DevelopersTopic :: Software Development :: CompilersTopic :: Text Processing :: LinguisticTyping :: Typed

Tags

javascript parser tree-sitterjsx grammar parsingincremental javascript parsingecmascript syntax treejavascript ast generationtree-sitter language bindingjavascript code analysis
parsingsyntax-treecode-analysis

More Linguistic packages

Further reading