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)

babel-plugin-generator-prettier
babel-plugin-generator-prettier goto-bus-stop JavaScript

Babel plugin to use prettier for transformed code output

9
ast-refactor
ast-refactor flatironhealth Python
9
JOECC
JOECC jesings C

Jonathan's Optimizing and Extensible C Compiler (pronounced "joke"), called as such because the name, just like any attempt to use the compiler in pla...

9
sql-ast
sql-ast aleclarson JavaScript

MySQL parser

9
astequal
astequal go-toolsmith Go

Package astequal provides AST (deep) equallity check operations.

9
phptree-ast-generator
phptree-ast-generator loophp PHP

Generates Abstrax Syntax Tree (AST) of a PHP script in DOT (Graphviz) or Image (PNG, JPG, SVG) formats.

9
pytest-ast-transformer
pytest-ast-transformer okorolev Python

AST Transformer for tests integrated with py.test.

9
ast-finder
ast-finder rajasegar JavaScript

jscodeshift find api automatically generated from code

9
Mini-C-Compiler
Mini-C-Compiler Ajitesh27 C

Compiler Design project on C Compiler Implementation

9
solidity-parser-explorer
solidity-parser-explorer sambacha C

Solidity and Yul syntax-aware highlighting and AST explorer

9
PySniffer
PySniffer SinaraPimenta Python

PySniffer is a tool to analyze OpenSource Python projects hosted on GitHub, looking for the modules used .

9
go-js-parser
go-js-parser 0xVesion Go

A JavaScript parser, written in Go.

9
rlox-interpreter
rlox-interpreter paulfedorow Rust

rlox-interpreter is an AST-walking implementation of Bob Nystrom's Lox language in Rust.

9
metrics-calculator-python
metrics-calculator-python minaschar Python

This is a tool written in python that calculates software quality metrics and then technical debt. It is specifically aimed at OOP Python softwares.

9
Geetest-Captcha-Crack
Geetest-Captcha-Crack tamya2020 JavaScript

Geetest 极验3代滑动验证 | 从 JavaScript 层面一步步逆向破解

9
ranlexer
ranlexer chaxus TypeScript

Tiny JavaScript parser and generator.

9
s-expression-syntax
s-expression-syntax scymtym Common Lisp

Parse CL syntactic constructs in s-expression form (possibly represented as e.g. CSTs) and construct syntax trees

9
typescript-ast-go
typescript-ast-go armsnyder Go

Library for parsing TypeScript source code into an abstract syntax tree (AST)

9
hikma-engine
hikma-engine foyzulkarim TypeScript

A TypeScript-based code knowledge graph indexer that transforms Git repositories into searchable knowledge stores for AI agents. Creates interconnecte...

9
mimo
mimo bethropolis JavaScript

a simple programming language written in js.

9
elm-syntax-format
elm-syntax-format lue-bird Elm

pretty print elm-syntax like elm-format

9
php-dump-plugin
php-dump-plugin j-plugins Kotlin

Intellij IDEA Plugin Exposes PHP internal stuctures

9
glyph
glyph benmyles Go

🔮 glyph – mcp server to map your codebase with symbol outlines

9
navegador
navegador ConflictHQ Python

AST + knowledge graph context engine for AI coding agents

9
babel-normalize-comments
babel-normalize-comments babel-utils JavaScript

Merge comments together into a normalized string

8
dlox
dlox rkirsling Dart

A Dart port of jlox, the Lox language's AST interpreter (http://www.craftinginterpreters.com/).

8
pluggable-babel-eslint
pluggable-babel-eslint g-plane JavaScript

Pluggable babel-eslint.

8
query-translator-demo
query-translator-demo netgen PHP

Demo project for the Query Translator library

8
walnut.v1
walnut.v1 p-ranav C++

The Walnut programming language

8
humanize
humanize goraz Go

DEPRICATED : A simple human friendly :) ast representation for go, new version at https://github.com/fzerorubigd/humanize

8
codf
codf nilium Go

Config file parser for Go in the style of nginx.

8
remark-vue-loader
remark-vue-loader mactavishz JavaScript

A webpack loader that transforms your Markdown to Vue Single-file Component

8
StackOverflow-Joern
StackOverflow-Joern yang1young Python

Stackoverflow code extraction and analyze using Joern

8
ts-react-pure-class-plugin
ts-react-pure-class-plugin Saviio TypeScript

A TypeScript AST Transformer that transform class based pure component to functional component

8
rocambole-node-update
rocambole-node-update sindresorhus JavaScript

Update a rocambole AST node

8
rocambole-node-remove
rocambole-node-remove sindresorhus JavaScript

Remove a rocambole AST node

8
mich-h
mich-h tunnckoCore JavaScript

:tada: Create HAST-compliant virtual dom trees of HTML using hyperscript compatible syntax or JSX, just in ~570 bytes.

8
gopy
gopy Samyak2 Python

A compiler frontend for a subset of Go written in Python

8
remark-helpers
remark-helpers greybax JavaScript

Helper methods for remark

8
vscode-gogrep
vscode-gogrep quasilyte TypeScript

Structural, syntax-aware search for Go code for VS Code.

8
bison-example
bison-example 5nord C

Simple example how to get a flex/bison project up and running

8
shinaCC
shinaCC AlanSwift C++

Yet Another Compiler for C

8
dethklok
dethklok orsinium-labs Python

The most uncompromising Python code formatter ever!

8
estree-util-attach-comments
estree-util-attach-comments syntax-tree JavaScript

utility to attach comments to estree nodes

8
UnPlag
UnPlag scriptographers Python

:mag_right: A Plagiarism Detector for C++, Python and text files

8
ts-extractor
ts-extractor ts-docs TypeScript

Extracts modules, classes, interfaces, enums, type aliases and constants from typescript projects.

8
ast-parser
ast-parser daybrush JavaScript

ast parser

8
ast-node-finder
ast-node-finder rajasegar TypeScript

AST Node Find api automatically generated from code

8
expr
expr muktihari Go

Expr is a simple, lightweight and performant programming toolkit for evaluating basic mathematical expression and boolean expression in a string.

8
NGG
NGG alexdremov C++

"Never gonna give you up" programming language

8