tree-sitter-embedded-template
Embedded Template (ERB, EJS) grammar for tree-sitter
Decision gist · record as of 2026-08-14
Yes, if you are building developer tools or analysis pipelines that need to parse ERB, EJS, or related embedded-template languages. The prebuilt wheels and active repository make installation straightforward. Not necessary if you only need to render templates—use a template engine instead. Maintenance is slowing but the package remains stable with no known vulnerabilities.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.10 or later; tree-sitter core library must be installed separately.
- Medium friction: prebuilt wheels cover common platforms (x86_64, ARM, Windows), but requires Python 3.10+.
- Last release 350 days ago; repository remains active but maintenance pace is slowing.
License · maintenance · safety
MIT (permissive) — MIT license permits unrestricted use, modification, and distribution with minimal obligations—suitable for both open-source and proprietary projects.
last release 2025-08-29 (350 days) · last repo commit 2025-08-31 · 82 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 3,405,030 downloads/mo, #2,631 on PyPI
Alternatives
Verify before relying
pip install tree-sitter-embedded-template
from tree_sitter import Language, Parser
parser = Parser()
parser.set_language(Language('tree_sitter_embedded_template'))- Whether tree-sitter core is automatically installed as a dependency or must be managed separately.
- Performance characteristics and parse speed for large embedded-template documents.
- Exact scope of template syntax variants supported beyond ERB, EJS, ETLua, and ETA.
What it is and what it does
tree-sitter-embedded-template is a language grammar module for the tree-sitter incremental parser, specialized in parsing templating languages where scripting code is embedded within text using `<%` and `%>` delimiters. It supports ERB, EJS, ETLua, and ETA syntax patterns. The package provides precompiled binaries for multiple platforms and architectures, making it straightforward to integrate into Python applications that need to analyze or transform embedded-template source code.
This is a low-level parsing tool intended for developers building linters, formatters, code analyzers, or IDE features that work with embedded-template files. It does not execute templates or provide a rendering engine—it only parses the syntax tree. You would use it when you need programmatic access to the structure of template code, not when you need to render templates.
Use it for
- Build a linter or formatter for ERB/EJS files by traversing the parsed syntax tree.
- Analyze embedded-template code in an IDE plugin to provide syntax highlighting or code completion.
- Extract and validate embedded scripting code from template files for security auditing.
- Implement a code refactoring tool that transforms template syntax while preserving structure.
- Generate documentation or metrics from template codebases by parsing and analyzing the tree.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you are building developer tools or analysis pipelines that need to parse ERB, EJS, or related embedded-template languages.
The prebuilt wheels and active repository make installation straightforward. Not necessary if you only need to render templates—use a template engine instead. Maintenance is slowing but the package remains stable with no known vulnerabilities.
Install
tree-sitter-embedded-template on PyPI
Before you install
Medium friction: prebuilt wheels cover common platforms (x86_64, ARM, Windows), but requires Python 3.10+. Last release 350 days ago; repository remains active but maintenance pace is slowing.
Requires Python 3.10 or later; tree-sitter core library must be installed separately.
License in practice
MIT license permits unrestricted use, modification, and distribution with minimal obligations—suitable for both open-source and proprietary projects.
Quickstart
pip install tree-sitter-embedded-template
from tree_sitter import Language, Parser
parser = Parser()
parser.set_language(Language('tree_sitter_embedded_template'))
Verify before relying
- Whether tree-sitter core is automatically installed as a dependency or must be managed separately.
- Performance characteristics and parse speed for large embedded-template documents.
- Exact scope of template syntax variants supported beyond ERB, EJS, ETLua, and ETA.
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 350 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 3,405,030 / month, #2,631 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Intended Audience :: DevelopersTopic :: Software Development :: CompilersTopic :: Text Processing :: LinguisticTyping :: Typed |
Evidence: tree_sitter_embedded_template-0.25.0-cp310-abi3-macosx_10_9_x86_64.whl; tree_sitter_embedded_template-0.25.0-cp310-abi3-macosx_11_0_arm64.whl; tree_sitter_embedded_template-0.25.0-cp310-abi3-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl; tree_sitter_embedded_template-0.25.0-cp310-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl; tree_sitter_embedded_template-0.25.0-cp310-abi3-musllinux_1_2_aarch64.whl; tree_sitter_embedded_template-0.25.0-cp310-abi3-musllinux_1_2_x86_64.whl; tree_sitter_embedded_template-0.25.0-cp310-abi3-win_amd64.whl; tree_sitter_embedded_template-0.25.0-cp310-abi3-win_arm64.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “tree-sitter parser embedded templates”
- tree-sitter-embedded-templateProvides a tree-sitter parser for embedded template languages like…
- tree-sitter-verilogProvides a SystemVerilog grammar parser for tree-sitter, enabling…
- tree-sitter-htmlProvides an HTML grammar for tree-sitter, enabling incremental…
Give your agent the search over MCP, or paste the wish link into any chat.
More Linguistic packages
Detects and normalizes text encoding from unknown or ambiguous sources, supporting all IANA character sets that Python's core library provides codecs for, with the ability to register custom codecs.
tiktoken is a fast BPE tokenizer that converts text into token sequences compatible with OpenAI models, supporting multiple encoding schemes including o200k_base and model-specific encodings.
Install it if you work with OpenAI APIs or need to understand token boundaries in GPT-family models.
Detects character encoding and language in byte sequences with high accuracy, supporting 99 encodings and returning confidence scores, language tags, and MIME types.
Install it if you need to detect character encoding or language in byte data; the rewrite makes it substantially faster and more accurate than its predecessors.
Converts Unicode text to ASCII by transliterating non-ASCII characters into their closest ASCII equivalents, with no runtime dependencies.
However, if transliteration quality or ongoing maintenance matters, consider unidecode instead despite its GPL-only license.
Lark is a parsing library that builds abstract syntax trees from context-free grammars, supporting multiple parsing algorithms (Earley, LALR(1), CYK) with automatic line and column tracking.
Python bindings to the tree-sitter parsing library, enabling incremental parsing and syntax tree analysis for source code.
See also tree-sitter-java · tree-sitter-python · tree-sitter-html · tree-sitter-ruby · tree-sitter-json · tree-sitter-toml · tree-sitter-javascript · tree-sitter-go · tree-sitter-kotlin · tree-sitter-typescript