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

public
public xxjwxc Go

util toolkit for go.golang 通用函数包

176
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
prisma-ast
prisma-ast MrLeebo TypeScript

Abstract Syntax Tree for parsing schema.prisma files

167
ocean
ocean riicchhaarrd C

Programming language that compiles into a x86 ELF executable.

166
Nexus-skills
Nexus-skills Haaaiawd Python

AI-native codebase intelligence skills — generate persistent .nexus-map/ knowledge bases and instantly query file structure, dependency graphs, and ch...

165
jsx-ast-utils
jsx-ast-utils jsx-eslint JavaScript

AST utility module for statically analyzing JSX

164
ng-morph
ng-morph taiga-family TypeScript

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

158
CodeWiki
CodeWiki PorunC Python

CodeWiki is a knowledge platform that analyzes repositories into AST graphs, builds GraphRAG indexes, and generates source-grounded developer wikis wi...

157
codeparser
codeparser WolframResearch Wolfram Language

Parse Wolfram Language source code as abstract syntax trees (ASTs) or concrete syntax trees (CSTs)

156
arbor
arbor getArbor-dev Rust

Graph-native code intelligence that replaces embedding-based RAG with deterministic program understanding.

156
acorn-typescript
acorn-typescript TyrealHu TypeScript

Alternative, TypeScript parser

154
math-engine
math-engine dengsgo Go

Mathematical expression parsing and calculation engine library. 数学表达式解析计算引擎库

152
nativejsx
nativejsx treycordova JavaScript

JSX to native DOM API transpilation. :yellow_heart: <div> ⟹ document.createElement('div')!

152
FreeTensor
FreeTensor roastduck C++

A language and compiler for irregular tensor programs.

152
node-typescript-parser
node-typescript-parser buehler TypeScript

Parser for typescript (and javascript) files, that compiles those files and generates a human understandable AST.

149
subscript
subscript dy JavaScript

Expression parser / evaluator.

149
pyast64
pyast64 benhoyt Python

Compile a subset of the Python AST to x64-64 assembler

148
nativejsx
nativejsx treycordova JavaScript

JSX to native DOM API transpilation. :yellow_heart: <div> ⟹ document.createElement('div')!

146
rubocop-ast
rubocop-ast rubocop Ruby

RuboCop's AST extensions and NodePattern functionality

146
yaep
yaep vnmakarov SWIG

Yet Another Earley Parser

144
polarify
polarify Quantco Python

Simplifying conditional Polars Expressions with Python 🐍 🐻‍❄️

144
py-lua-parser
py-lua-parser boolangery Python

A Lua parser and AST builder written in Python.

144
learn-javascript
learn-javascript cheogo

《前端基础漫游指南》深入的、系统的学习 javascript 基础,喜欢点 Star

142
c-compiler
c-compiler AnjaneyaTripathi Yacc

A compiler that accepts any valid program written in C. It is made using Lex and Yacc. Returns a symbol table, parse tree, annotated syntax tree and i...

142
ast
ast kotlinx Java

Generic AST parsing library for kotlin multiplatform

141
ml
ml src-d Python

sourced.ml is a library and command line tools to build and apply machine learning models on top of Universal Abstract Syntax Trees

141
ai-code-decompile
ai-code-decompile zhongguagua TypeScript

🚀 AI-powered JavaScript Decompiler & Deobfuscator. 基于 AI 与 AST 的 JS 代码分析与混淆还原工具,把不可读的构建产物变成人能看懂的代码。

139
solc-typed-ast
solc-typed-ast ConsenSysDiligence TypeScript

A TypeScript package providing a normalized typed Solidity AST along with the utilities necessary to generate the AST (from Solc) and traverse/manipul...

138
pasta
pasta trailofbits C++

Peter's Amazing Syntax Tree Analyzer

137
rector-src
rector-src rectorphp PHP

Development repository for Rector. Check https://github.com/rectorphp/rector for the distribution repository.

136
SPATool
SPATool SummerSec Java

静态程序分析工具 主要生成方法的CFG和.java文件的AST

135
efp
efp xuri Go

Go Language Microsoft Excel™ Formula Parser

134
tanu.js
tanu.js ariesclark TypeScript

An oversimplification of the TypeScript Compiler API for defining and generating source files.

134
ast-pretty-print
ast-pretty-print babel-utils JavaScript

A pretty printer for AST-like structures

132
metacode
metacode mutating Python

A standard language for machine-readable code comments

132
tree-hugger
tree-hugger autosoft-dev Python

A light-weight, extendable, high level, universal code parser built on top of tree-sitter

132
ts-transform-import-path-rewrite
ts-transform-import-path-rewrite dropbox TypeScript

TS AST transformer to rewrite import path

130
box-extractor
box-extractor astahmer TypeScript

Static code extraction. Zero-runtime CSS-in-TS `<Box />` -> became a part of Panda CSS

128
sumak
sumak productdevbook TypeScript

Type-safe SQL query builder. Zero dependencies, AST-first, hookable, tree-shakeable. Pure TypeScript.

126
Supplementary-AST-Based-Deobfuscation-Materials
Supplementary-AST-Based-Deobfuscation-Materials SteakEnthusiast JavaScript

Supplementary deobfuscator source code from my Javascript reverse-engineering blog, ReverseJS.

126
libdparse
libdparse dlang-community D

Library for lexing and parsing D source code

125
remindb
remindb radimsem Go

An agentic memory database that cuts session tokens by 82–99%. One portable SQLite file — your agent's memory, anywhere.

125
LSTS
LSTS Lambda-Mountain-Compiler-Backend

Large Scale Type Systems: ML/C Hybrid Programming Language

125
i-pascal
i-pascal casteng Java

A free Object Pascal language plugin for IntelliJ IDEA

124
Ebyte-Go-Morpher
Ebyte-Go-Morpher KiExitDispatcher Go

Ebyte-Go-Morpher is a Go program that parses, analyzes, and rewrites Go source code to apply multiple layers of obfuscation. It operates directly on t...

124
go2ast
go2ast reflog Go

Transform Go code into it's AST

124
codemark
codemark DanielCardonaRojas Rust

A semantic code bookmarking system for humans and agents

123
performance-decorator
performance-decorator Wscats

🏇User behavior & Function execution tracking solution - 大型前端项目的用户行为跟踪,函数调用链分析,断点调试共享化和复用化实践

123