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)

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

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

42
panpipe
panpipe marcelotto Elixir

An Elixir wrapper around Pandoc

42
peginator
peginator badicsalex Rust

PEG parser generator for creating ASTs in Rust

42
grunt-amdcheck
grunt-amdcheck mahdi-shojaee JavaScript

Uses AST to find and remove unused dependencies in AMD modules.

41
graphql2ts
graphql2ts sibelius TypeScript

Transform .graphql to graphql-js typescript

41
subpy
subpy sdiehl Python

Python subsets

41
telescope-ast-grep.nvim
telescope-ast-grep.nvim ray-x Lua

AST grep extension for telescope.nvim

41
markdown-ast
markdown-ast aleclarson JavaScript

Tiny markdown parser

41
pyastrx
pyastrx pyastrx Python

The PyASTrX philosophy is to provide a simple, easy-to-use, and extensible framework for code quality analysis, refactoring and codebase analysis.

41
tiny-compiler
tiny-compiler dborchard Java

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

41
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).

40
nast
nast dragonman225 TypeScript

A block-based intermediate representation for document-like content.

40
ts-emitter
ts-emitter KnisterPeter TypeScript

Emitting typescript AST back to typescript

39
grit
grit rtk-ai Rust

Git for AI agents — zero merge conflicts, any number of parallel agents, same codebase

39
json-asty
json-asty rse JavaScript

Lossless JSON-to-AST Parser and AST-to-JSON Generator

39
DepView
DepView nettee Java

View code dependencies in a Java project

39
tbcnn.tensorflow
tbcnn.tensorflow bdqnghi Python

Reproduce the results of Tree-based Convolutional Neural Network (TBCNN)

39
ast-viewer
ast-viewer caroso1222 TypeScript

🕺TypeScript AST Viewer

38
vscode-ast
vscode-ast vscode-box TypeScript

Show JavaScript / TypeScript Abstract Syntax Tree

38
bsparser
bsparser lead-tools 1C Enterprise

[RIP] Парсер встроенного языка

38
filter-parser
filter-parser scim2 Go

SCIM v2 Query Filter Parser in Go

38
parse-function
parse-function tunnckoCore JavaScript

(!! moved to tunnckoCore/opensource multi-package repository !!) :trident: Parse a function into an object using espree, acorn or babylon parsers. Ext...

37
Annotated-AST-For-LLM
Annotated-AST-For-LLM cameronking4 JavaScript

Annotated AST for the purposes of LLM code repository context. Use this novel approach to pre-process your Github repository. This project will genera...

37
asty
asty rse JavaScript

Abstract Syntax Tree (AST) Data Structure

37
infiniloom
infiniloom Topos-Labs Rust

High-performance repository context generator for LLMs - Transform codebases into optimized formats for Claude, GPT-4/5, Gemini, and other LLMs

37
pascal-interpreter
pascal-interpreter ghaiklor JavaScript

A simple interpreter for a large subset of Pascal language written for educational purposes

37
giulia
giulia thatsme Elixir

A persistent, local-first AI development daemon built in Elixir/OTP. AST-level code intelligence, Knowledge Graph, runtime BEAM introspection, and sem...

36
node-detective-es6
node-detective-es6 dependents JavaScript

Get the dependencies of an ES6 module by traversing its AST

36
hxjsonast
hxjsonast nadako Haxe

Parse JSON into position-aware AST with Haxe!

36
ts-clone-node
ts-clone-node wessberg TypeScript

A library that helps you clone Nodes from a Typescript AST

36
org-to-markdown
org-to-markdown k2052 JavaScript

org mode to markdown/mdx

36
talt
talt Quramy TypeScript

Template functions to generate TypeScript AST node object

36
estree-to-babel
estree-to-babel coderaiser JavaScript

convert estree ast to babel

35
ast-mcp-server
ast-mcp-server angrysky56 Python

By transforming source code into a queryable Semantic Graph and a structured AST, this tool bridges the gap between "reading text" and "understanding...

35
TypeInferencer
TypeInferencer kekyo F#

Minimal type inference Algorithm W and Algorithm M in F#

35
gradle2kts
gradle2kts gradle Kotlin

Gradle Groovy to Gradle Kotlin conversion tool - discontinued spike

34
mogglo
mogglo langston-barrett Rust

Multi-language AST-based code search and rewriting tool that supports embedding Lua code in patterns

34
eslint-traverse
eslint-traverse discord JavaScript

Create a sub-traversal of an AST node in your ESLint plugin

34
inspect4py
inspect4py SoftwareUnderstanding Python

Static code analysis package for Python repositories

34
sqlgpt-parser
sqlgpt-parser eosphoros-ai Python

sqlgpt-parser is a Python implementation of an SQL parser that effectively converts SQL statements into Abstract Syntax Trees (AST). By leveraging AST...

34
rehype-attr
rehype-attr jaywcjlove TypeScript

New syntax to add attributes to Markdown.

34
mexpr
mexpr danielgtaylor Go

Micro expression parser library for Go

34
auto-i18n
auto-i18n felipevetter TypeScript

🚀 The smartest way to internationalize Next.js. AI-powered text extraction & zero-config runtime. No [locale] folders, no complex middleware. Just pu...

33
sql-composer
sql-composer sql-rb Ruby

Standalone SQL composer DSL for Ruby

33
vue2any
vue2any surmon-china JavaScript

把 vue 组件转换为任何 web 类模板

33
metric-parser
metric-parser KennethanCeyer TypeScript

:scroll: AST-based advanced mathematical parser written by Typescript.

33
1c-language-parser
1c-language-parser LazarenkoA Go

Парсер языка 1С (bsl) посредством yacc грамматик. Парсер строит AST

33
markdown-tree-parser
markdown-tree-parser ksylvan JavaScript

A powerful JavaScript library and CLI tool for parsing and manipulating markdown files as tree structures. Built on top of the battle-tested remark/un...

33
MetaStruct
MetaStruct PenzaStreetGames Jupyter Notebook

JIT-ускоритель программ на языке Python

33
pfst
pfst tom-pytel Python

Format-preserving Python AST manipulation

33