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)

reporecall
reporecall proofofwork-agency TypeScript

Local codebase memory, auto-generated wiki, and interactive architecture dashboard for Claude Code and MCP. AST indexing, call graphs, hybrid search,...

26
textlint-plugin-html
textlint-plugin-html textlint HTML

HTML support for textlint

26
toml-eslint-parser
toml-eslint-parser ota-meshi TypeScript

A TOML parser that produces output compatible with ESLint

26
import-deps
import-deps schettino72 Python

find python module imports

26
codeverter
codeverter southworks TypeScript

Convert ts source files into multiple languages

26
babel-codemod-example
babel-codemod-example kentcdodds JavaScript

An example of how to use babel as a codemod

25
vaceline
vaceline shqld TypeScript

Toolchains for VCL that parses, lints, formats, and transpiles

25
react-proptypes-generate
react-proptypes-generate dpzxsm JavaScript

A Vscode extension for react PropTypes, Support command line

25
macro-visit
macro-visit sangria-graphql Scala

A macro-based generic visitor generator

25
doctor-json
doctor-json privatenumber TypeScript

Surgically edit JSON & JSONC strings while preserving whitespace, comments, and formatting

25
swc-ast-viewer
swc-ast-viewer magic-akari TypeScript

SWC AST Viewer

25
magic-string-ast
magic-string-ast sxzz TypeScript

magic-string with Babel AST shortcut.

25
RCParsing
RCParsing RomeCore C#

The fluent, lightweight and powerful .NET lexerless parsing library for language development (DSL) and data scraping.

25
rehype-dom
rehype-dom rehypejs JavaScript

HTML processor to parse and compile with browser APIs, powered by plugins

25
Lua-To-Python
Lua-To-Python marteinn Python

Lua to python compiler

25
astexplorer-go
astexplorer-go DanSnow JavaScript
25
QinScript
QinScript Yaser-wyx TypeScript

A scripting language used to learn the principles of compilation

25
Mayat
Mayat AnubisLMS C

Experimental AST-Based Source Code Similarity Detection Tool

25
cst-tokens
cst-tokens js-cst-tokens JavaScript

Tool-building tools that can help parse, validate, or transform token streams

25
scope-analyzer
scope-analyzer goto-bus-stop JavaScript

simple scope analysis for javascript ASTs

24
ddless-engine
ddless-engine behindSolution PHP

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

24
codeTree
codeTree ThinkyMiner Python

MCP server with 23 tools for structured code understanding via tree-sitter. 10 languages. 999 tests. One-command install.

24
ast-explorer
ast-explorer scalameta Scala

AST explorer for Scalameta trees

24
cppcombinator
cppcombinator MoserMichael C++

parser combinator and AST generator in c++17

24
verilogAST-cpp
verilogAST-cpp leonardt C++

C++17 implementation of an AST for Verilog code generation

24
ast-builder
ast-builder rajasegar JavaScript

Build your ASTs directly from code

24
MiniC
MiniC LC044 C++

MiniC语言编译器前端,生成抽象语法树,产生线性IR,生成控制流图

24
thrift-pyi
thrift-pyi unmade Python

Simple `.pyi` stubs generator from thrift interfaces

24
lua-parser
lua-parser dingyi222666 Kotlin

A Lua 5.3 / 5.4 Lexer & Parser written in Pure Kotlin.

24
md4qt
md4qt igormironchik C++

Markdown parser for Qt6. This is a mirror of https://invent.kde.org/libraries/md4qt

24
clangml
clangml Antique-team C++

OCaml bindings for clang

23
decaffeinate-parser
decaffeinate-parser decaffeinate TypeScript

A better AST for CoffeeScript, inspired by CoffeeScriptRedux.

23
macro
macro opennota Go

Expand macros in Go using go/ast. This repository has migrated to https://gitlab.com/opennota/macro

23
deco
deco vic Elixir

Minimalist Function Decorators for Elixir

23
talk-maringa-ast
talk-maringa-ast sibelius JavaScript

Slides of my talk about Practical AST at Front in Maring

23
nestjs-dependency-analyzer
nestjs-dependency-analyzer ChuloWay TypeScript

A command-line tool for analyzing and visualizing dependencies in NestJS applications.

23
open-fortran-parser-xml
open-fortran-parser-xml mbdevpl Fortran

XML output generator for Open Fortran Parser, and Python wrapper for it.

23
Sodium-Programming-Language
Sodium-Programming-Language Instruction-Oriented-Programming Python

Sodium is a general purpose programming language which is instruction-oriented (a new programming concept that we are developing and devising) [Still...

23
prettier-transform
prettier-transform azz JavaScript

Perform AST transforms before running prettier

23
LebJS
LebJS LebsterFace Java

My attempt at a JavaScript engine

22
effect-oxlint
effect-oxlint mpsuesser TypeScript

Write oxlint custom lint rules with Effect v4

22
recma
recma mdx-js JavaScript

JS processor powered by plugins part of the @unifiedjs collective

22
AST2DB
AST2DB NarendraYSF C++

AST2DB is a powerful tool that utilizes clang to parse C/C++ source code, extract Abstract Syntax Tree (AST) information, and store it in an SQLite da...

22
yoyo
yoyo avirajkhare00 Rust

yoyo is a local MCP server for repository reading and change work. It exists to make coding agents less hallucinated, more grounded, and more truthful...

22
ctxexp-parser
ctxexp-parser Lydanne JavaScript

In the dynamic execution of JS language environment (wechat applet) to execute JS class calling function.

22
jsdast
jsdast geut JavaScript

JSDoc Abstract Syntax Tree

22
dotlang
dotlang abock C#

.NET Standard library for parsing and generating Graphviz DOT files.

22
xgo
xgo Kretech Go

Go Components

22
SoliDiffy
SoliDiffy mojtaba-eshghie Jupyter Notebook

SoliDiffy: AST-Based Code Differencing Tool for Solidity Smart Contracts

21
html-ast-transform
html-ast-transform jspaine TypeScript

Transform html with helpers for manipulating an AST

21