A grammar describes the syntax of a programming language, and might be defined in Backus-Naur form (BNF). A lexer performs lexical analysis, turning text into tokens. A parser takes tokens and builds a data structure like an abstract syntax tree (AST). The parser is concerned with context: does the sequence of tokens fit the grammar? A compiler is a combined lexer and parser, built for a specific grammar.
ESlint plugin for sorting requires (CommonJS modules) alphabetically
Blazing fast parser for BrightScript that gives you ESTree like AST
Markdown processing tools
Generate regular expressions from regjsparser’s AST.
A straightforward recursive descent Parser Generator with a focus on "human" code generation and ease of use.
Faultless AST for Open Biomedical Ontologies in Python.
Decompiled and cleaned Akamai v3 VM powering the latest sensor_data challenge script.
Temporal code analyses at scale
SourceKitten + Querying + Editing = 💖
Meta-programming framework for JavaScript based on LayerD concepts
Clone AST without extra properties
Find declarations in Go source code that shadow predeclared identifiers
Simple to use text parser and syntax highlighter for Kotlin Multiplatform
An opinionated code sorter
Rector Website
the best structural search and replace tool for JavaScript, Flow, and TypeScript
The simplest tool to parse/transform/generate code on ast
JavaScript AST in C++
Yode - Focused Code Editing
Source-level code analysis toolkit for SAST, context engineering, and AI coding
A scientific calculator CLI (Command Line Interface) tool and library written in Go
This module obfuscates python code.
⭐小程序转换工具 (。>﹏<。)
Solidity Parser for Solium
Keyed reversible source code obfuscator for Rust: syntactically valid, functionally identical, spiritually hostile.
A simple tool for vlang, generate v source file to AST json file
Magic assert macros for Go.
A tool to visualize abstract syntax tree.
SQL-first lifecycle toolkit for testing, inspecting, and evolving database applications.
Our own version of Webpack in <200 lines
Faultless AST for Open Biomedical Ontologies.
Carrot auto-writes specs and catches AI code drift. MCP server for Cursor that AST-validates every commit.
RegexParser: Static Analysis, Linter & Logic Solver for PHP
The TypeScript documenter that meets you where you are
:evergreen_tree: Ruby AST Visualizer. Based on Parser.
Static JavaScript Analysis: AST, Control Flow, Data Flow, & Pointer Analysis
confirm that a SpiderMonkey format AST represents an ECMAScript program
A list of awesome tools and libraries which deals with ASTs in Ruby
Source code for my blog · ✍️ 💻 👋
Transform CommonJS modules into ES modules.
Rector upgrades rules for Nette
Basic Parser in Emacs Lisp.
AST knowledge graph MCP server for Claude Code — semantic search, call graph traversal, HTTP route tracing, impact analysis. Auto-indexes 10 languages...
A toolkit to generate Python 3 source code from Pharo.
Snapdragon utility for creating a new AST node in custom code, such as plugins.
A pure Python library for benchmarked, scalable numerics using numba.
Local codebase memory, auto-generated wiki, and interactive architecture dashboard for Claude Code and MCP. AST indexing, call graphs, hybrid search,...
Gram in javascript.
HTML support for textlint
Convert ts source files into multiple languages