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 (1537)

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

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

235
phplrt
phplrt phplrt PHP

PHP Language Recognition Tool

234
error-prone-support
error-prone-support PicnicSupermarket Java

Error Prone extensions: extra bug checkers and a large battery of Refaster rules.

234
node-precinct
node-precinct dependents JavaScript

Unleash the detectives

232
bash-parser
bash-parser vorpaljs JavaScript

Parses bash into an AST

230
ast-i18n
ast-i18n sibelius TypeScript

Easily migrate your existing React codebase to use i18n

229
nlcst
nlcst syntax-tree

Natural Language Concrete Syntax Tree format

229
AST-query
AST-query SBoudrias JavaScript

Tentative to a simple JavaScript AST modification library

227
cub
cub louisdh Swift

The Cub Programming Language

226
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
parser
parser graphql-dotnet C#

A lexer and parser for GraphQL in .NET

220
asteval
asteval lmfit Python

minimalistic evaluator of python expression using ast module

215
automapper
automapper jolicode PHP

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

214
gox
gox 8byt Go

JSX for Go

213
protoletariat
protoletariat cpcloud Python

Protocol Buffers for the rest of us

213
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
astq
astq rse JavaScript

Abstract Syntax Tree (AST) Query Engine

209
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

204
Trace
Trace L018 JavaScript

A Chrome extension for web analytics

202
llvm-guide-zh
llvm-guide-zh zy445566 C++

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

198
transfunctions
transfunctions mutating Python

Say NO to Python fragmentation on sync and async

198
astpretty
astpretty asottile Python

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

197
ts-graphviz
ts-graphviz ts-graphviz TypeScript

Simple Graphviz library for TypeScript.

196
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...

195
proleap-cobol-parser
proleap-cobol-parser uwol COBOL

ProLeap ANTLR4-based parser for COBOL

193
py2many
py2many adsharma Python

Python to CLike languages transpiler

192
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...

192
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...

192
pycode_similar
pycode_similar fyrestone Python

A simple plagiarism detection tool for python code

191
js-ziju
js-ziju wizardpisces TypeScript

Compile javascript to LLVM IR, x86 assembly and self interpreting

191
libpypa
libpypa vinzenz C++

libpypa is a Python parser implemented in pure C++

190
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.

188
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.

182
astpath
astpath hchasestevens Python

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

180
public
public xxjwxc Go

util toolkit for go.golang 通用函数包

177
libpypa
libpypa vinzenz C++

libpypa is a Python parser implemented in pure C++

176
iamfast
iamfast iamfastio

Repository for iamfast questions and issues

176
cgen
cgen inducer Python

C/C++ source generation from an AST

175
lioness
lioness louisdh Swift

The Lioness Programming Language

172
ngast
ngast mgechev TypeScript

Parser for Angular projects.

172
putout
putout coderaiser JavaScript

🗜 Pluggable and configurable code transformer with built-in eslint, babel plugins and jscodeshift codemods support of js, jsx typescript, flow files,...

168
ocean
ocean riicchhaarrd C

Programming language that compiles into a x86 ELF executable.

167
go-fAST
go-fAST T14Raptor Go

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

167
prisma-ast
prisma-ast MrLeebo TypeScript

Abstract Syntax Tree for parsing schema.prisma files

164
jsx-ast-utils
jsx-ast-utils jsx-eslint JavaScript

AST utility module for statically analyzing JSX

162
ng-morph
ng-morph taiga-family TypeScript

Code mutations in your project or schematics were never easier than now.

159