Topic

ast

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.

Repositories (1635)

astpath
astpath hchasestevens Python

A command-line search utility for Python ASTs using XPath syntax.

257
json-to-ast
json-to-ast vtrushin JavaScript

JSON AST parser

250
gulp-strip-debug
gulp-strip-debug sindresorhus JavaScript

Strip console, alert, and debugger statements from JavaScript code

249
AST-query
AST-query SBoudrias JavaScript

Tentative to a simple JavaScript AST modification library

249
lang-c
lang-c vickenty Rust

Lightweight C parser for Rust

245
phpgrep
phpgrep quasilyte Go

Syntax-aware grep for PHP code.

241
ast-grep-vscode
ast-grep-vscode ast-grep TypeScript

ast-grep VSCode is a structural search and replace extension for many languages.

241
rector-symfony
rector-symfony rectorphp PHP

Rector upgrade rules for Symfony

239
phplrt
phplrt phplrt PHP

PHP Language Recognition Tool

238
node-precinct
node-precinct dependents JavaScript

Unleash the detectives

234
nlcst
nlcst syntax-tree

Natural Language Concrete Syntax Tree format

233
bash-parser
bash-parser vorpaljs JavaScript

Parses bash into an AST

231
ast-i18n
ast-i18n sibelius TypeScript

Easily migrate your existing React codebase to use i18n

231
AST-query
AST-query SBoudrias JavaScript

Tentative to a simple JavaScript AST modification library

227
cub
cub louisdh Swift

The Cub Programming Language

227
snapdragon
snapdragon here-be JavaScript

snapdragon is an extremely pluggable, powerful and easy-to-use parser-renderer factory.

225
HRDevHelper
HRDevHelper patois Python

Context-sensitive HexRays decompiler plugin that visualizes the ctree of decompiled functions.

222
asteval
asteval lmfit Python

minimalistic evaluator of python expression using ast module

220
parser
parser graphql-dotnet C#

A lexer and parser for GraphQL in .NET

219
automapper
automapper jolicode PHP

:rocket: Very FAST :rocket: PHP AutoMapper with on the fly code generation

216
gox
gox 8byt Go

JSX for Go

214
protoletariat
protoletariat cpcloud Python

Protocol Buffers for the rest of us

214
csharp-eval-unity3d
csharp-eval-unity3d deniszykov C#

C# Expression Parser for Unity3D

210
refactor
refactor isidentical Python

Simple python source refactoring toolkit based on AST

209
gograph
gograph ozgurcd Go

Local-only Go static analysis engine with a built-in MCP server. Gives AI coding agents deterministic structural awareness: call graphs, impact analys...

209
astq
astq rse JavaScript

Abstract Syntax Tree (AST) Query Engine

209
proleap-cobol-parser
proleap-cobol-parser uwol COBOL

ProLeap ANTLR4-based parser for COBOL

207
openapi-typescript-code-generator
openapi-typescript-code-generator Himenon TypeScript

TypeScript code generator via OpenAPI scheme.

207
query-translator
query-translator netgen PHP

Query Translator is a search query translator with AST representation

206
ts-graphviz
ts-graphviz ts-graphviz TypeScript

Simple Graphviz library for TypeScript.

204
transfunctions
transfunctions mutating Python

Say NO to Python fragmentation on sync and async

203
astpretty
astpretty asottile Python

Pretty print the output of python stdlib `ast.parse`.

200
smart-coding-mcp
smart-coding-mcp omar-haris JavaScript

An extensible Model Context Protocol (MCP-Local-MRL-RAG-AST) server that provides intelligent semantic code search for AI assistants. Built with local...

199
Trace
Trace L018 JavaScript

A Chrome extension for web analytics

199
llvm-guide-zh
llvm-guide-zh zy445566 C++

User Guides For those new to the LLVM system.(LLVM系统的新用户指南,中文翻译版)

198
BBob
BBob JiLiZART TypeScript

⚡️Blazing fast js bbcode parser, that transforms and parses bbcode to AST and transform it to HTML, React, Vue with plugin support in pure javascript...

198
AutoDocs
AutoDocs TrySita Python

We handle what engineers and IDEs won't: generating and maintaining technical documentation for your codebase, while also providing search with depend...

197
py2many
py2many adsharma Python

Python to CLike languages transpiler

192
js-ziju
js-ziju wizardpisces TypeScript

Compile javascript to LLVM IR, x86 assembly and self interpreting

191
pycode_similar
pycode_similar fyrestone Python

A simple plagiarism detection tool for python code

190
libpypa
libpypa vinzenz C++

libpypa is a Python parser implemented in pure C++

189
compiler
compiler drifter1 C

This is an implementation of a compiler for a simple C-like language that uses the C tools Flex and Bison.

186
unimport
unimport hakancelikdev Python

:rocket: A linter, formatter for finding and removing unused import statements.

185
html5parser
html5parser acrazing TypeScript

A super tiny and fast html5 AST parser.

183
astpath
astpath hchasestevens Python

A command-line search utility for Python ASTs using XPath syntax.

180
go-fAST
go-fAST T14Raptor Go

A JavaScript AST parser, traverser, and generator written in Go

178
cgen
cgen inducer Python

C/C++ source generation from an AST

177
iamfast
iamfast iamfastio

Repository for iamfast questions and issues

177
bonsai-js
bonsai-js danfry1 TypeScript

A safe, zero-dependency expression language for rules, filters, and templates

176
public
public xxjwxc Go

util toolkit for go.golang 通用函数包

176