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

Ola
Ola mateeeeeee C++

Optimizing compiler for a statically-typed C-like language, featuring both an LLVM backend and a fully custom backend targeting x86-64 and ARM64

57
Chiffon
Chiffon polygonplanet JavaScript

A small ECMAScript parser, tokenizer and minifier written in JavaScript.

56
pyc-cfg
pyc-cfg shramos Python

Pyc-cfg is a pure python control flow graph builder for almost all Ansi C programming language.

56
scalajson
scalajson mdedetrich Scala

ScalaJSON - JSON for Scala, currently contains minimal AST

55
about-Vue
about-Vue Leo-lin214

:notebook_with_decorative_cover: Vue 源码的探讨和学习

55
Globalyze
Globalyze Bil0000 TypeScript

Prettier for localization, automatically convert React and Next.js apps into multilingual applications FAST.

55
static-analysis
static-analysis pen4uin

静态分析

55
toast
toast Fanatics Go

Plugin-driven CLI utility for code generation using Go source as IDL

54
fossil-mcp
fossil-mcp yfedoseev Rust

The code quality toolkit for the agentic AI era. Find dead code, clones, and scaffolding across 15 languages. MCP server + CLI.

54
coAST
coAST coala CSS

Universal and language-independent abstract syntax tree

54
gct
gct QasimWani Python

Graphical Code Tracer (GCT): Visualize code at lightning speed

54
Antlr4Ast
Antlr4Ast xoofx C#

Antlr4Ast is a .NET library that provides a parser and abstract syntax tree (AST) for ANTLR4/g4 files.

54
konan
konan egoist JavaScript

find all require/import calls by walking the AST

53
graphql-ast-types
graphql-ast-types imranolas JavaScript

Functional helpers for working with a GraphQL AST

52
php-ast-reverter
php-ast-reverter tpunt PHP

Reverts the php-ast AST back into (somewhat) PSR-compliant code

52
sast
sast shawnbot JavaScript

Parse CSS, Sass, SCSS, and Less into a unist syntax tree

52
vibecop
vibecop bhvbhushan TypeScript

AI code quality toolkit — deterministic linter for the AI coding era. 22 detectors, GitHub Action PR gate, zero LLM required.

51
retidy
retidy Xmader TypeScript

Extract, unminify, and beautify ("retidy") each file from a webpack/parcel bundle (JavaScript reverse engineering)

51
yaraast
yaraast seifreed Python

A powerful Python library and CLI tool for parsing, analyzing, and manipulating YARA rules through Abstract Syntax Tree (AST) representation

51
ast-comments
ast-comments t3rn0 Python

Extension to the built-in ast module. Finds comments in source code and adds them to the parsed tree.

50
easytemplate
easytemplate speakeasy-api Go

easytemplate is Go's text/template with 🦸 JS super powers 🦸

50
JavaParser-AST-Inspector
JavaParser-AST-Inspector MysterAitch Java

Using JavaParser (https://github.com/JavaParser/JavaParser), browse and navigate the Abstract Syntax Tree (AST) based on the code in your editor.

50
rich-text-vista
rich-text-vista larksuite TypeScript

RichTextVista is a high-performance, extensible rich text component designed for HarmonyOS applications, supporting diverse rich text styling capabili...

49
lowcode
lowcode iteria-app JavaScript

React Lowcode - prototype, develop and maintain internal apps easier

49
codebase-intelligence
codebase-intelligence Thibault-Knobloch Python

🧩 Tibo – CLI tool for codebase indexing, embedding and natural language querying.

48
gomambojambo
gomambojambo q6r Go

Golang AST Obfuscation

48
ast-explorer-helper
ast-explorer-helper JSREI TypeScript

ast explorer助手,优化分析程序结构时的体验,提升逆向还原代码编写效率

47
dockerfile-ast
dockerfile-ast rcjsuen TypeScript

An npm module for parsing Dockerfiles powered by TypeScript.

47
gogrep
gogrep quasilyte Go

Syntax-aware Go code search, based on the mvdan/gogrep

47
babel-plugin-ast
babel-plugin-ast barretlee JavaScript

使用 babel 进行 AST 分析和处理

46
brenda
brenda dave Go

Brenda is a boolean expression solver for Go AST

46
astnorm
astnorm quasilyte Go

AST normalization experiment

45
prettierrc
prettierrc obartra JavaScript

🗄️ 💅 config file for prettier

45
tsquery-playground
tsquery-playground urish TypeScript

Playground for TSQuery

45
bluelox
bluelox nanmu42 Go

A tree-walking interpreter implemented in Golang for Lox, with a browser playground supported by WASM | 一个基于语法树的Lox解释器,附带WASM版本的playg...

45
php2python
php2python nicolasrod Python

Convert PHP code to Python under CGI (beta)

44
Hive_SQL_AST
Hive_SQL_AST lulumengyi Java

利用Druid SQL Parser解析HiveSQL日志,自动构建字段级别的血缘关系及主外键的自动抽取

44
pyre-ast
pyre-ast grievejia OCaml

pyre-ast is an OCaml library to parse Python files. The library features its full-fidelity to the official Python spec, as well as its adoption of ta...

44
phpast.com
phpast.com ryangjchandler PHP

A web tool to explore the ASTs generated by PHP-Parser.

44
lombok-ex
lombok-ex houbb Java

Java compile time annotation, lombok extension framework.(java 编译时注解框架,对 lombok 进行扩展)

44
Lyspen
Lyspen uprun JavaScript

Lyspen (previously Lisperanto) is an AST structured editor.

44
graphql-factory
graphql-factory graphql-factory JavaScript

A toolkit for building GraphQL

43
ts-transform-react-constant-elements
ts-transform-react-constant-elements dropbox TypeScript

A TypeScript AST Transformer that can speed up reconciliation and reduce garbage collection pressure by hoisting React elements to the highest possibl...

43
php-ast-viewer
php-ast-viewer RightCapitalHQ TypeScript

The PHP AST Viewer is a tool for viewing the Abstract Syntax Tree of PHP code. By visualizing the structure, it helps developers gain a deeper underst...

43
TypeScriptAST
TypeScriptAST ToCSharp C#

.NET port of Microsoft's TypeScript parser for simple AST manipulation

43
dioscuri
dioscuri wooorm JavaScript

A gemtext (`text/gemini`) parser with support for streaming, ASTs, and CSTs

43
go-parser
go-parser tuqqu PHP

Golang parser written in PHP

43
bredon
bredon robinweser JavaScript

A modern CSS value compiler in JavaScript

42
styn
styn renatorib TypeScript

:gem: A small, zero-dependency, extensible, object to css generator

42
panpipe
panpipe marcelotto Elixir

An Elixir wrapper around Pandoc

42