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.
AST Transpiler that converts Typescript into different languages (PHP, Python, C# (wip))
Goldmark extension that renders and formats markdown files
Monorepo for a suite of `unified`-compatible converters for converting between, from, and to .docx, JATS XML, LaTeX, and PDF
JSON typeclasses that know the difference between null and absent fields
Syntax tree visualizer for tree-sitter
ECMAScript Expressions parser and static eval
Lua AST toolkit for formatting, deobfuscating*, and tweaking code, in pure lua.
Transform html with helpers for manipulating an AST
SoliDiffy: AST-Based Code Differencing Tool for Solidity Smart Contracts
Headwind parses Tailwind utility classes from JSX/TSX/HTML source code, replaces them with generated semantic class names, and outputs corresponding C...
Next-gen PHPDoc parser with support for intersection types and generics(TypeScript version)
Infimium Builds Cross-IDE Persistent, project-aware coding session memory that works across Claude Code, Cursor, and Windsurf simultaneously.
🤖 World's first AST-powered AI development agent | Autonomous Django/Flask builder | Zero-token intelligence | Military-grade sandbox | Made in India...
Parser for edge template engine
Automagically insert Open Telemetry spans in your codebase.
A basic .NET Library for parsing wikitext into AST.
golang AST matcher
Do some fun with AST, using JavaScript.
Automagically converts discord.py async-branch code to rewrite-branch code.
Review the Python you changed, not the Python you inherited. Git-aware AST code review that runs in the seconds before git push.
Shorten (mangle) names in JavaScript code
CLI Tool to extract an Interface from a Golang struct using AST
A dynamic, interpreted, scripting language written in Java.
Package astcopy implements Go AST deep copy operations.
Utilities for the snapdragon parser/compiler.
TypeScript AST transformer to resolve type aliases into fully formed interfaces
Rust library to scan files and expand (make modules inline) multi-file crates source code as a single tree.
yet another fast json.
Implementation of Red / Green syntax trees. Inspired by Rowan
Parse markdown string to Abstract Syntax Tree which we defined.
A better grep for AI agents. Structural search, call graphs, impact analysis, semantic compression. 87% fewer tokens. 16 languages. Built in Rust.
根据Golang定义的接口生成proto文件
Simple Python AST visualizer
微信和百度小程序的互转工具,脚本转换率目标为100%,持续更新中~~
Deduplicate named and unnamed imports of the same import path in Go files
LILT: noun, A characteristic rising and falling of the voice when speaking; a pleasant gentle accent.
SDK for CodeConverter.net
Output hash value of JavaScript AST.
Dive into AST(Abstract Syntax Tree) in JavaScript.
Toolchain for generating JSON definitions of Apple APIs
Toolkit for running codemods over multiple Kotlin files inspired by jscodeshift.
[DEPRECATED] Use following package instead
Expression trees for TypeScript similar to C#. Expression trees represent code in a tree-like data structure, where each node is an expression, for ex...
☯️ Specifications for the StructuredMerge contract; Draft RFCs for merge ruleset vocabulary
Static Python models parser that extracts ORM, Pydantic, and dataclass models into a unified structure (no code execution).
☯️ Ruby implementation of the StructuredMerge contract
Still afraid to do something with AST? Mutates the AST, not your brain.
✨ Solidity Language Lexer and Parser, generated by official ANTLR4 grammar.
ini parser for golang
An AST explorer web app for C using Tree Sitter