Abstract Syntax Trees and Practical Applications in JavaScript

This page summarizes the projects mentioned and recommended in the original post on dev.to

CodeRabbit: AI Code Reviews for Developers
Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.
coderabbit.ai
featured
Nutrient - The #1 PDF SDK Library
Bad PDFs = bad UX. Slow load times, broken annotations, clunky UX frustrates users. Nutrient’s PDF SDKs gives seamless document experiences, fast rendering, annotations, real-time collaboration, 100+ features. Used by 10K+ devs, serving ~half a billion users worldwide. Explore the SDK for free.
nutrient.io
featured
  1. V8

    The official mirror of the V8 Git repository

    Remember that we earlier established that every source gets parsed into an AST at some point before it gets compiled or interpreted. For example, platforms like Nodejs and chromium-based browsers use Gooogle's V8 engine behind the scenes to run JavaScript and of course, some AST parsing is always involved before the interpreter kicks in. I looked V8's source and I discovered it uses its own internal parser to achieve this.

  2. CodeRabbit

    CodeRabbit: AI Code Reviews for Developers. Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.

    CodeRabbit logo
  3. v8.dev

    The source code of v8.dev, the official website of the V8 project.

    Remember that we earlier established that every source gets parsed into an AST at some point before it gets compiled or interpreted. For example, platforms like Nodejs and chromium-based browsers use Gooogle's V8 engine behind the scenes to run JavaScript and of course, some AST parsing is always involved before the interpreter kicks in. I looked V8's source and I discovered it uses its own internal parser to achieve this.

  4. Acorn

    A small, fast, JavaScript-based JavaScript parser

    Why do we then have other JavaScript parsers like babel parser, swc parser, acorn, espree and the likes since JavaScript engines have their own internal parsers?

  5. PostCSS

    Transforming styles with JS plugins

    Code transpilation isn't specific to JavaScript, You can also add a level of transformation to your CSS source using tools like post-css. Most languages with a fairly mature ecosystem will probably have some tools to help with code transformation.

  6. js

    Monorepo for the JS language tools.

    Why do we then have other JavaScript parsers like babel parser, swc parser, acorn, espree and the likes since JavaScript engines have their own internal parsers?

  7. As you may have noticed, this isn't a comprehensive "How to Create a Babel Plugin" tutorial, so we won't spend too much time talking about how to Create a plugin. Instead, we'll begin with a template that I have exclusively designed for this article. This template is hosted in a monolithic repository, which simplifies the management of multiple packages within a single project. The template has two plugins in its plugin directory, one Babel plugin and another Eslint plugin. You can access the repository on GitHub.

  8. ESLint

    Find and fix problems in your JavaScript code.

    Disclaimer: If you've already developed Babel or ESLint plugins, this article may not be as beneficial for you, as you're likely already familiar with the majority of the content covered here.

  9. Nutrient

    Nutrient - The #1 PDF SDK Library. Bad PDFs = bad UX. Slow load times, broken annotations, clunky UX frustrates users. Nutrient’s PDF SDKs gives seamless document experiences, fast rendering, annotations, real-time collaboration, 100+ features. Used by 10K+ devs, serving ~half a billion users worldwide. Explore the SDK for free.

    Nutrient logo
  10. Gatsby

    The best React-based framework with performance, scalability and security built in.

    Babel plugins are everywhere. From being used to remove unwanted exports from files in Gatsby to being used to disallow users from doing re-exports in Nextjs.

  11. babel-sublime

    Syntax definitions for ES6 JavaScript with React JSX extensions.

    Disclaimer: If you've already developed Babel or ESLint plugins, this article may not be as beneficial for you, as you're likely already familiar with the majority of the content covered here.

  12. Next.js

    The React Framework

    Babel plugins are everywhere. From being used to remove unwanted exports from files in Gatsby to being used to disallow users from doing re-exports in Nextjs.

  13. babel-plugin-handbook

    How to create Babel plugins

    For more information about building Babel plugins, check the Kent's Babel Handbook or this awesome Babel handbook by Jamie.

  14. babel-handbook

    :blue_book: A guided handbook on how to use Babel and how to create plugins for Babel.

    For more information about building Babel plugins, check the Kent's Babel Handbook or this awesome Babel handbook by Jamie.

  15. the-super-tiny-compiler

    :snowman: Possibly the smallest compiler ever

    The super tiny compiler by Jamie

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • Becoming Comfortable – Embracing the Tech Space with Thuy Doan

    4 projects | dev.to | 6 Oct 2021
  • Hacktoberfest 2021

    8 projects | /r/reactjs | 29 Sep 2021
  • Firebase and Payload CMS: Early Look at a Client-Side Auth Strategy

    4 projects | dev.to | 22 Feb 2025
  • I built a recipe website

    4 projects | dev.to | 6 Feb 2025
  • Using React with Astro: A Quick Tutorial

    2 projects | dev.to | 21 Jan 2025