awesome-repositories.com
Blog
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetÀ proposNotre méthodologiePresseServeur MCP
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
estree avatar

estree/estree

0
View on GitHub↗
5,421 stars·364 forks·6 vues

Estree

ESTree est un schéma formel et un ensemble d'interfaces d'objets utilisés pour représenter le code source JavaScript comme un arbre de syntaxe abstraite standardisé. Il sert de format d'arbre commun et de standard de parsing pour assurer l'interopérabilité entre différents parsers JavaScript et outils de transformation.

La spécification fournit un moyen cohérent de modéliser les constructions du langage, incluant les déclarations, les expressions et les déclarations de modules. Elle inclut des représentations détaillées pour les fonctionnalités modernes du langage telles que les classes, les identifiants privés et la logique de court-circuit comme le nullish coalescing et l'optional chaining.

Le projet couvre une large surface d'outillage linguistique, incluant la modélisation de systèmes de modules avec imports dynamiques et alias d'export, la gestion des littéraux entiers larges, et le support d'extensions de syntaxe expérimentales pour les propositions de langage au stade précoce. Il définit également comment mapper les nœuds de l'arbre aux coordonnées sources originales pour un suivi précis de la localisation.

Ce modèle standardisé facilite l'analyse de code statique, la transformation automatisée de code source et l'interopérabilité générale des outils de compilation.

Features

  • Standardized AST Transformation - Defines a consistent set of object interfaces to represent source code as a tree for tool interoperability.
  • Abstract Syntax Tree Specifications - Defines a formal standardized structure for representing JavaScript source code syntax in a tree format.
  • Standardized Schemas - Defines a consistent tree format for JavaScript source code to ensure different parsers and tools can work together.
  • Standardized Representations - Provides a standardized structure for import and export declarations using named, default, and namespace specifiers.
  • Modern Syntax - Represents modern constructs including classes, arrow functions, template literals, and destructuring patterns.
  • Module Interface Specifications - Standardizes named imports, exports, and re-exports using literals for namespace identifiers.
  • Parser Specifications - Establishes a common tree format that ensures interoperability between different JavaScript parsers and transformation tools.
  • Specification AST Generation - Defines a standardized set of object interfaces for representing JavaScript source code as an abstract syntax tree.
  • Interoperable Syntax Pipelines - Provides a shared specification for abstract syntax trees enabling different frontend and backend tools to exchange data.
  • Syntax Tree Construction - Standardizes the construction and structure of hierarchical syntax representations from JavaScript source code.
  • ESTree AST Parsing - Provides the industry-standard specification for parsing JavaScript source code into abstract syntax trees.
  • Experimental Syntax Support - Provides the means to parse and analyze unstable language features and new proposals via tree extensions.
  • Literal Node Representations - Maps primitive values and large integers to nodes storing both the computed value and original source text.
  • Optional Chaining - Models member accesses and function calls that short-circuit when a reference is null or undefined.
  • AST Node Location Mapping - Associates tree nodes with specific line and column numbers in the original code for precise error reporting.
  • AST-to-Source Mappings - Provides a standard for mapping abstract syntax tree nodes back to their original source code offsets.
  • Class AST Modeling - Represents class bodies including method definitions, property definitions, and static initialization blocks.
  • Private Identifier Nodes - Maps private class elements and their usage in expressions to a standardized AST node format.
  • Syntax Proposal Modeling - Standardizes how new JavaScript syntax proposals and experimental features are represented in a structured tree format.
  • Module Export Specifications - Maps export-all declarations that rename the exported namespace using a specific alias.
  • Dynamic Imports - Models dynamic import syntax by treating the module source as an arbitrary expression node.
  • Module Metadata Specifications - Models module import and export declarations that specify metadata such as media types for loaded modules.
  • BigInt Representations - Defines a structured node for BigInt literals that preserves both the native numeric value and the original string representation.
  • Source Coordinate Mapping - Provides a structured representation of JavaScript syntax that maps source locations to specific line and column numbers.
  • Standardized Tree Models - Represents code in a standardized format to facilitate automated refactoring and the generation of modified source trees.
  • Null-Coalescing Operators - Defines the standardized AST node for the nullish coalescing operator.
  • Operator Node Modeling - Models complex logic like optional chaining and nullish coalescing as structured AST nodes with distinct operands.
  • AST Schema Extensions - Specifies standardized node additions for experimental language proposals to maintain compatibility across parser versions.
  • Static Code Analysis - Models language constructs as a structured tree to enable tools that analyze code without executing it.

Historique des stars

Graphique de l'historique des stars pour estree/estreeGraphique de l'historique des stars pour estree/estree

Recherche par IA

Explorez plus de dépôts awesome

Décrivez vos besoins en langage naturel — l'IA classe des milliers de projets open source sélectionnés par pertinence.

Start searching with AI

Alternatives open source à Estree

Projets open source similaires, classés selon le nombre de fonctionnalités partagées avec Estree.
  • nikic/php-parserAvatar de nikic

    nikic/PHP-Parser

    17,437Voir sur GitHub↗

    PHP-Parser is a tool that converts PHP source code into an abstract syntax tree for static analysis and programmatic manipulation. It functions as a parser, a code generator, and a static analysis framework. The project enables the programmatic construction of abstract syntax tree nodes through a fluent interface and provides the ability to transform these trees back into formatted source code. It includes a serializer that exports abstract syntax trees to JSON format and reconstructs them from strings. The toolset covers several capability areas, including namespace resolution, constant exp

    PHP
    Voir sur GitHub↗17,437
  • standard/standardAvatar de standard

    standard/standard

    29,431Voir sur GitHub↗

    Standard is a suite of static analysis tools for JavaScript, comprising a linter, formatter, and a predefined style guide. It functions as a static code analyzer that scans source code for style violations and potential errors without executing the program. The project provides an automatic code fixer that rewrites source code to resolve formatting issues and enforce syntax consistency. It implements a standardized set of rules for JavaScript formatting and syntax to ensure a uniform appearance across different projects. The system covers a wide range of static analysis capabilities, includi

    JavaScriptdevelopmentecmascriptes6
    Voir sur GitHub↗29,431
  • acornjs/acornAvatar de acornjs

    acornjs/acorn

    11,402Voir sur GitHub↗

    Acorn is a JavaScript parser that converts source text into a structured abstract syntax tree. It follows the ESTree specification to produce a standardized JSON tree format, enabling consistent analysis of code structure and language versions. The project features a plugin-based grammar extension system that allows the base parser to be extended with custom rules for experimental or non-standard language features. It also includes syntax error recovery, which inserts placeholder nodes into the tree when encountering invalid code to allow parsing to continue. The toolset covers static analys

    JavaScript
    Voir sur GitHub↗11,402
  • babel/minifyAvatar de babel

    babel/minify

    4,376Voir sur GitHub↗

    This project is an AST-based code optimizer and compressor for modern ECMAScript, JSX, and TypeScript source code. It functions as a JavaScript minifier that uses the Babel toolchain to reduce file size by removing unnecessary characters and whitespace while preserving program logic. The tool is distinguished by its ability to process experimental language proposals and transform modern syntax into browser-compatible versions. It provides specialized handling for React JSX transpilation and strips type annotations from TypeScript files to produce compressed production assets. The system cove

    JavaScript
    Voir sur GitHub↗4,376
Voir les 30 alternatives à Estree→

Questions fréquentes

Que fait estree/estree ?

ESTree est un schéma formel et un ensemble d'interfaces d'objets utilisés pour représenter le code source JavaScript comme un arbre de syntaxe abstraite standardisé. Il sert de format d'arbre commun et de standard de parsing pour assurer l'interopérabilité entre différents parsers JavaScript et outils de transformation.

Quelles sont les fonctionnalités principales de estree/estree ?

Les fonctionnalités principales de estree/estree sont : Standardized AST Transformation, Abstract Syntax Tree Specifications, Standardized Schemas, Standardized Representations, Modern Syntax, Module Interface Specifications, Parser Specifications, Specification AST Generation.

Quelles sont les alternatives open-source à estree/estree ?

Les alternatives open-source à estree/estree incluent : nikic/php-parser — PHP-Parser is a tool that converts PHP source code into an abstract syntax tree for static analysis and programmatic… standard/standard — Standard is a suite of static analysis tools for JavaScript, comprising a linter, formatter, and a predefined style… acornjs/acorn — Acorn is a JavaScript parser that converts source text into a structured abstract syntax tree. It follows the ESTree… babel/minify — This project is an AST-based code optimizer and compressor for modern ECMAScript, JSX, and TypeScript source code. It… fkling/astexplorer — AST Explorer is a web-based tool for parsing source code into abstract syntax trees and visualizing the resulting tree… xoofx/markdig — Markdig is a markdown parser library that converts text into structured HTML, plain text, or other formats using a…