awesome-repositories.com
Blog
MCP
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
ProjetServeur MCPÀ proposNotre méthodologiePresse
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

13 dépôts

Awesome GitHub RepositoriesSyntax Traversal

Tools for navigating nodes, tokens, and trivia within a syntax tree.

Distinct from Syntax Tree Construction: Distinct from syntax tree construction: focuses on the traversal and inspection of existing trees.

Explore 13 awesome GitHub repositories matching software engineering & architecture · Syntax Traversal. Refine with filters or upvote what's useful.

Awesome Syntax Traversal GitHub Repositories

Trouvez les meilleurs dépôts grâce à l'IA.Nous recherchons les dépôts les plus pertinents grâce à l'IA.
  • babel/babelAvatar de babel

    babel/babel

    44,009Voir sur GitHub↗

    Babel is a pluggable JavaScript compiler and transpiler that converts modern ECMAScript syntax into backwards-compatible versions of the language. It functions as an abstract syntax tree manipulator, parsing source code into a hierarchical structure to traverse and modify nodes for custom code transformations. The system utilizes a plugin-driven architecture to apply specific transformation rules and supports presets that bundle multiple plugins into named configuration groups. This enables the transformation of experimental syntax and the injection of non-global polyfills to ensure consisten

    Implements a visitor-based system for navigating and triggering callbacks on specific nodes within a syntax tree.

    TypeScriptastbabelcompiler
    Voir sur GitHub↗44,009
  • dotnet/roslynAvatar de dotnet

    dotnet/roslyn

    20,241Voir sur GitHub↗

    The .NET Compiler Platform is a collection of open-source APIs for C# and Visual Basic that provides deep code analysis, refactoring, and automated source code generation. It serves as the core infrastructure for building development tools, offering a platform to inspect, modify, and understand source code through immutable syntax trees and semantic models. The platform distinguishes itself by providing full-fidelity syntax trees that preserve every character of source code, including whitespace and comments, alongside an incremental compilation pipeline that enables near-instant feedback dur

    Provides tools to traverse syntax trees to inspect specific language constructs and their positions.

    C#csharphacktoberfestroslyn
    Voir sur GitHub↗20,241
  • realm/swiftlintAvatar de realm

    realm/SwiftLint

    19,456Voir sur GitHub↗

    SwiftLint is a static analysis tool and code formatter designed to enforce consistent coding styles and identify semantic issues within Swift source code. It functions as a command-line utility that evaluates code against established conventions to ensure uniform structure and architectural standards across a project. The tool distinguishes itself through a custom linting engine that leverages compiler-integrated syntax analysis to perform deep inspections of code structure. Beyond simple pattern matching, it supports automated source code transformation to correct formatting violations and r

    Navigates source code syntax trees to perform deep structural inspections and logical checks.

    Swiftcode-qualityhacktoberfestlinter
    Voir sur GitHub↗19,456
  • typescript-eslint/typescript-eslintAvatar de typescript-eslint

    typescript-eslint/typescript-eslint

    16,103Voir sur GitHub↗

    This project is a static analysis framework and linting engine designed to inspect TypeScript codebases. It functions as a plugin suite that enables standard linting workflows to parse source code into abstract syntax trees, allowing for the automated enforcement of coding standards and the identification of potential bugs through a modular, rule-based visitor pattern. The engine distinguishes itself by integrating directly with the TypeScript compiler to perform type-aware analysis. By accessing compiler type information, it can identify complex errors and unsafe patterns that standard synta

    Uses recursive tree-walking mechanisms to execute analysis logic at every node of the syntax tree.

    TypeScripteslinteslint-plugineslintplugin
    Voir sur GitHub↗16,103
  • nvim-treesitter/nvim-treesitterAvatar de nvim-treesitter

    nvim-treesitter/nvim-treesitter

    13,970Voir sur GitHub↗

    This project provides an integration of Tree-sitter into the Neovim editor to enable structural code analysis. It serves as a framework for structural code navigation, context-aware syntax highlighting, and the management of language-specific parsers. The system distinguishes itself through a multi-language injection handler that identifies and parses embedded languages within a single document. It uses a dedicated parser manager to install, update, and remove grammar definitions and their associated query files. The tool covers several capability areas including incremental text selection,

    Traverses the hierarchical structure of parsed source code to derive structural boundaries for indentation and folding.

    Tree-sitter Query
    Voir sur GitHub↗13,970
  • seaswalker/spring-analysisAvatar de seaswalker

    seaswalker/spring-analysis

    13,739Voir sur GitHub↗

    Spring-analysis is a diagnostic utility designed to visualize the internal architecture and execution logic of Java applications built on the Spring Framework. It functions as a static analysis tool that parses source code to map structural relationships and component interactions without requiring the program to execute. The tool distinguishes itself by automatically extracting configuration and annotation data to identify beans and service definitions, which it then translates into visual representations of the system. By reconstructing method call hierarchies and event propagation paths, i

    Navigates source code nodes to extract structural information and logic flow details without execution.

    Javanotessource-code-analysisspring
    Voir sur GitHub↗13,739
  • 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

    Provides tools for navigating and inspecting nodes and tokens within a generated syntax tree.

    JavaScript
    Voir sur GitHub↗11,402
  • ktlint/ktlintAvatar de ktlint

    ktlint/ktlint

    6,717Voir sur GitHub↗

    ktlint is a linter and code formatter for Kotlin that checks source files against a built-in set of style rules and automatically rewrites them to match those rules. It operates by walking the Kotlin abstract syntax tree, detecting violations, and applying transformations directly at the node level before regenerating the source code from the modified tree. The project ships a curated default rule set that requires no configuration to enforce consistent formatting, and provides a command-line interface for running linting and formatting in batch mode. Its rule-set-based plugin architecture al

    Walks the Kotlin abstract syntax tree to detect style violations and apply node-level transformations.

    Kotlinkotlinlintlinter
    Voir sur GitHub↗6,717
  • unifiedjs/unifiedAvatar de unifiedjs

    unifiedjs/unified

    4,999Voir sur GitHub↗

    Unified est un moteur de traitement d'arbres de syntaxe et un écosystème de contenu conçu pour analyser, transformer et sérialiser du contenu textuel. Il fonctionne comme un pipeline de contenu basé sur des plugins qui convertit le texte brut en arbres de syntaxe abstraits structurés utilisant des objets JavaScript simples pour une inspection et une modification programmatiques. Le projet se distingue par une architecture modulaire qui permet une traduction inter-écosystème, permettant aux arbres de syntaxe d'être convertis entre différentes spécifications telles que HTML et Markdown. Il utilise un système de clonage de processeur immuable et des conteneurs d'état partagés, garantissant que les pipelines de traitement peuvent être étendus et personnalisés sans altérer les configurations originales. Le système fournit des capacités complètes pour la gestion des arbres de syntaxe, y compris la traversée en profondeur, la sélection de nœuds basée sur CSS et les transformations récursives. Sa surface de traitement s'étend à l'analyse du langage naturel, à l'analyse de GitHub Flavored Markdown et au mappage des arbres de syntaxe vers des éléments DOM virtuels pour la visualisation dans le navigateur. La logique de traitement peut être intégrée dans des applications web via des bundlers de modules ou des CDN.

    Walks trees of nodes using depth-first traversal to visit and modify specific elements.

    JavaScriptastcstjavascript
    Voir sur GitHub↗4,999
  • dtolnay/synAvatar de dtolnay

    dtolnay/syn

    3,292Voir sur GitHub↗

    syn is a Rust syntax tree parser and token stream converter. It serves as a toolkit for procedural macro development, providing a framework to parse Rust source code into structured syntax trees for analysis and transformation. The project enables the manipulation of Rust abstract syntax trees through specialized visitor and folder patterns for traversing and mutating nodes. It provides a bidirectional mapping that allows developers to convert token streams into structured trees and print those trees back into tokens for code generation. The library covers a broad range of syntax analysis ca

    Provides specialized folder patterns to analyze and mutate syntax tree nodes during traversal.

    Rustproc-macro
    Voir sur GitHub↗3,292
  • haskell/haskell-language-serverAvatar de haskell

    haskell/haskell-language-server

    2,936Voir sur GitHub↗

    The Haskell Language Server is an implementation of the Language Server Protocol that provides real-time diagnostics, code navigation, and refactoring support for Haskell projects. It functions as a backend service that enables advanced editing capabilities within standard text editors by facilitating communication between the development environment and the Haskell compiler. The project distinguishes itself through a modular, plugin-based architecture that allows for the integration of independent components for specific language features. It leverages the host compiler as a library to perfo

    Provides tools for navigating and inspecting the structural representation of Haskell source code.

    Haskellcabalghchacktoberfest
    Voir sur GitHub↗2,936
  • andymass/vim-matchupAvatar de andymass

    andymass/vim-matchup

    1,912Voir sur GitHub↗

    Vim-matchup is a plugin for the Vim and Neovim text editors that provides advanced structural code navigation and manipulation. It functions as an extension to standard editor motions, enabling users to jump between, select, and modify matching language constructs and nested code blocks with high precision. The plugin distinguishes itself by utilizing language-specific syntax trees to track and identify corresponding delimiters and keywords. By integrating with syntax-aware engines, it maintains structural accuracy even in complex source files, while offering a fallback pattern-matching mecha

    Navigates nested code structures by traversing syntax trees to locate parent or sibling nodes.

    Vim Scripthighlighting-matchesmatching-pairsmatchparen
    Voir sur GitHub↗1,912
  • syntax-tree/mdastAvatar de syntax-tree

    syntax-tree/mdast

    1,441Voir sur GitHub↗

    The project provides a standardized abstract syntax tree specification and utility library for parsing, transforming, and serializing markdown documents. It serves as a comprehensive document processing architecture that translates between raw text markup and structured node representations in both directions. The capability surface covers syntax parsing for extended markdown features, custom syntax extensions, metadata blocks, and embedded expressions, alongside document serialization that converts syntax trees back into standard and extended markup formats. It includes node modeling and val

    Merges adjacent text nodes and block quotes to reduce redundancy and simplify syntax tree structures.

    astmarkdownsyntax-tree
    Voir sur GitHub↗1,441
  1. Home
  2. Software Engineering & Architecture
  3. Trees
  4. Syntax Tree Construction
  5. Syntax Traversal

Explorer les sous-tags

  • Syntax Tree MutationTools for modifying or transforming existing syntax trees into new representations. **Distinct from Syntax Traversal:** Distinct from Syntax Traversal: focuses on modifying nodes rather than just navigating them.
  • Tree MutationsMechanisms for modifying and replacing nodes within a syntax tree to transform code. **Distinct from Syntax Traversal:** Distinct from traversal, which is read-only; mutations focus on the folder pattern for generating new code structures.
  • Tree MutatorsTools that combine traversal and modification of syntax tree nodes. **Distinct from Syntax Traversal:** Extends simple traversal to include the ability to replace or modify nodes during the walk.