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.
Prettier is an opinionated code formatter.
🐠 Babel is a compiler for writing next generation JavaScript.
Transforming styles with JS plugins
A PHP parser written in PHP
⚡A CLI tool for code structural search, lint and rewriting. Written in Rust
markdown processor powered by plugins part of the @unifiedjs collective
Instant Upgrades and Automated Refactoring of any PHP 5.3+ code
js2flowchart - a visualization library to convert any JavaScript code into beautiful SVG flowchart. Learn other’s code. Design your code. Refactor cod...
Expression language and expression evaluation for Go
ECMAScript parsing infrastructure for multipurpose analysis
A web tool to explore the ASTs generated by various parsers.
GoGoCode is a transformer for JavaScript/Typescript/HTML based on AST but providing a more intuitive API.
Java 1-21 Parser and Abstract Syntax Tree for Java with advanced analysis functionalities.
JSqlParser parses an SQL statement and translate it into a hierarchy of Java classes. The generated hierarchy can be navigated using the Visitor Patte...
:books: 《Go语言定制指南》(原名:Go语法树入门/开源免费图书/Go语言进阶/掌握抽象语法树/Go语言AST)
TypeScript Compiler API wrapper for static analysis and programmatic code changes.
The ESTree Spec
:notebook_with_decorative_cover: The missing documentation tool for your Angular, Nest & Stencil application
☔️ interface for parsing, inspecting, transforming, and serializing content through syntax trees
A parser library for Go
ESDoc - Good Documentation for JavaScript
ECMAScript code generator
Blazing fast Markdown / CommonMark rendering in Swift, built upon cmark.
Automated mass refactoring of source code.
A developer tool to visualize a React application's component hierarchy.
C++ Insights - See your source code with the eyes of a compiler
A tool for refactoring code related to feature flag APIs
natural language processor powered by plugins part of the @unifiedjs collective
A tree-sitter based AST difftool to get meaningful semantic diffs
small, safe, and great commonmark (optionally gfm, mdx) compliant markdown parser
PHP Mutation Testing library
SQL interface to git repositories, written in Go. https://docs.sourced.tech/gitbase
Spoon is a metaprogramming library to analyze and transform Java source code. :spoon: is made with :heart:, :beers: and :sparkles:. It parses source f...
A tool set for CSS including fast detailed parser, walker, generator and lexer based on W3C specs and browser implementations
PSA: moved into babel/babel as @babel/parser -->
Graphical Python debugger which lets you easily view the values of all evaluated expressions
Syntax highlighting, like GitHub
a python refactoring library
Deobfuscate obfuscator.io, unminify and unpack bundled javascript
Library to parse and work with the C++ AST
Markdown Abstract Syntax Tree format
HTML processor powered by plugins part of the @unifiedjs collective
A 100% compliant, self-hosted javascript parser - https://meriyah.github.io/meriyah
🌳 Tiny and fast JavaScript code generator from an ESTree-compliant AST.
Acche din aa gaye
TypeScript development tool for Visual Studio Code that helps you automate creating the initial static typing for runtime values
PHP parser written in Go
Binary AST proposal for ECMAScript
Solhint is an open-source project to provide a linting utility for Solidity code.
ECMAScript JS AST traversal functions