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

sast
sast shawnbot JavaScript

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

52
hellish
hellish Univers42 C

in 42 school, we have both project of shell minishell and 42sh, after having so much trouble building the shell and output a quality solution. I had...

52
retidy
retidy Xmader TypeScript

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

52
easytemplate
easytemplate speakeasy-api Go

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

52
codebase-intelligence
codebase-intelligence Thibault-Knobloch Python

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

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

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
dockerfile-ast
dockerfile-ast rcjsuen TypeScript

An npm module for parsing Dockerfiles powered by TypeScript.

50
ddless-engine
ddless-engine behindSolution PHP

PHP debug engine that works without extensions AST instrumentation + file-based IPC. Powers DDLess.

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

49
lowcode
lowcode iteria-app JavaScript

React Lowcode - prototype, develop and maintain internal apps easier

49
gomambojambo
gomambojambo q6r Go

Golang AST Obfuscation

48
OPIDE
OPIDE OpenPawz Rust

Rust-native AI IDE — AST indexing, QuickJS sandbox, AES-256-GCM encrypted, O VSX: the first extension runtime for a Rust IDE. Zero Electron. Zero comp...

47
Hive_SQL_AST
Hive_SQL_AST lulumengyi Java

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

47
gogrep
gogrep quasilyte Go

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

47
aura
aura Naridon-Inc Rust

An audit trail for what AI agents changed in your codebase, and why — signed, per commit, at the symbol level

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
lombok-ex
lombok-ex houbb Java

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

46
ast-explorer-helper
ast-explorer-helper JSREI TypeScript

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

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

46
sipcode
sipcode Anuj7411 TypeScript

Keep Claude Code context clean. Open-source toolkit: drift detection, re-read dedup, integrity scoring, AST-aware reads, 15 MCP tools. 62.6% measured...

46
zshellcheck
zshellcheck afadesigns Go

Static analysis and auto-fix for the setopts, hooks, and globs Bash never learned.

46
prettierrc
prettierrc obartra JavaScript

🗄️ 💅 config file for prettier

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

45
bgts-context-engine
bgts-context-engine bgts-ai-org Python

Deterministic code-graph context engine for AI coding agents - PostgreSQL + Apache AGE + pgvector, MCP & REST, no LLM in the loop.

45
phpast.com
phpast.com ryangjchandler PHP

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

45
Lua-Obfuscator-Clyde-Protection
Lua-Obfuscator-Clyde-Protection sfr-development TypeScript

Advanced Luau / Lua Obfuscator - VM-based code protection, string encoding, control flow scrambling for Roblox scripts

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
Lyspen
Lyspen uprun JavaScript

Lyspen (previously Lisperanto) is an AST structured editor.

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

44
astnorm
astnorm quasilyte Go

AST normalization experiment

44
showsignature
showsignature FredySandoval TypeScript

A CLI that extracts the useful structure from source files: signatures, imports, types, variables, comments, and Markdown sections.

44
php2python
php2python nicolasrod Python

Convert PHP code to Python under CGI (beta)

44
tsquery-playground
tsquery-playground urish TypeScript

Playground for TSQuery

44
effect-oxlint
effect-oxlint mpsuesser TypeScript

Write oxlint custom lint rules with Effect v4

44
go-parser
go-parser tuqqu PHP

Golang parser written in PHP

44
graphql-factory
graphql-factory graphql-factory JavaScript

A toolkit for building GraphQL

43
tulipcc-maven-plugin
tulipcc-maven-plugin tulipcc Java

An updated version of the javacc-maven-plugin using ParserGeneratorCC

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
telescope-ast-grep.nvim
telescope-ast-grep.nvim ray-x Lua

AST grep extension for telescope.nvim

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
CastXMLSuperbuild
CastXMLSuperbuild CastXML CMake

Build CastXML and its dependencies (LLVM/Clang)

42
agent-slop-lint
agent-slop-lint JordanGunn Python

Language-agnostic code quality linter for the agentic era. Catches structural, lexical, and information based rot before it becomes architectural.

42
asmdot
asmdot 71 Rust

[Unstable] Fast, zero-copy and lightweight (Arm | Mips | x86) assembler in (C | C++ | C# | Go | Haskell | Javascript | Nim | OCaml | Python | Rust).

42
panpipe
panpipe marcelotto Elixir

An Elixir wrapper around Pandoc

42
tiny-compiler
tiny-compiler dborchard Java

Tiny Compiler in plain Java. Covers examples for AST, JDT, ANTLR & JavaParser

42
peginator
peginator badicsalex Rust

PEG parser generator for creating ASTs in Rust

42