Rust Is the Future of JavaScript Infrastructure

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • Scout APM - Less time debugging, more time building
  • SonarLint - Deliver Cleaner and Safer Code - Right in Your IDE of Choice!
  • OPS - Build and Run Open Source Unikernels
  • GitHub repo napi-rs

    A framework for building compiled Node.js add-ons in Rust via Node-API

    I've been using NAPI-RS to bridge from Electron Rust and it's been nice - https://napi.rs/ I believe SWC uses it behind the scenes.

    They just put out an alpha release that makes it way more ergonomic to write Rust functions that interop with JS, too. There's a small example of it in the README: https://github.com/napi-rs/napi-rs#taste

    NAPI isn't as well-known in the JS-to-Rust bindings world (Neon [1] is the more well-known library https://neon-bindings.com/) but it seems to be gaining steam.

  • GitHub repo boa

    Boa is an embeddable and experimental Javascript engine written in Rust. Currently, it has support for some of the language.

    Author here. A few other Rust projects to note that I didn't mention in the original post I've since found:

    - Boa (JS engine in Rust) – https://github.com/boa-dev/boa

    - RSLint (JS/TS linter in Rust) – https://github.com/rslint/rslint

    - Node version manager in Rust – https://github.com/Schniz/fnm

    If you know of any other popular ones, let me know. I'm keeping a list :)

  • Scout APM

    Less time debugging, more time building. Scout APM allows you to find and fix performance issues with no hassle. Now with error monitoring and external services monitoring, Scout is a developer's best friend when it comes to application development.

  • GitHub repo rslint

    A (WIP) Extremely fast JavaScript and TypeScript linter and Rust crate

    Author here. A few other Rust projects to note that I didn't mention in the original post I've since found:

    - Boa (JS engine in Rust) – https://github.com/boa-dev/boa

    - RSLint (JS/TS linter in Rust) – https://github.com/rslint/rslint

    - Node version manager in Rust – https://github.com/Schniz/fnm

    If you know of any other popular ones, let me know. I'm keeping a list :)

  • GitHub repo fnm

    🚀 Fast and simple Node.js version manager, built in Rust

    Author here. A few other Rust projects to note that I didn't mention in the original post I've since found:

    - Boa (JS engine in Rust) – https://github.com/boa-dev/boa

    - RSLint (JS/TS linter in Rust) – https://github.com/rslint/rslint

    - Node version manager in Rust – https://github.com/Schniz/fnm

    If you know of any other popular ones, let me know. I'm keeping a list :)

  • GitHub repo esbuild

    An extremely fast JavaScript and CSS bundler and minifier

    Go is active in this space too, esbuild is a very fast JavaScript bundler

    - https://github.com/evanw/esbuild

  • GitHub repo Next.js

    The React Framework

    There's many reasons to have a JS compilation step:

    - Still targeting legacy browsers like IE11

    - Using React / JSX syntax

    - Using TypeScript

    - Using other brand-new JS syntax that hasn't trickled out to wider support yet

    - Using custom JS transforms for libraries like `styled-components` (see this Next.js discussion thread for examples of the many different non-standard Babel transformations that people are using: https://github.com/vercel/next.js/discussions/30174 )

    That said, the ideal target language version _is_ getting better. Jason Miller ( creator of Preact) has done a lot of research on both browser support for ES2017, as well as tooling to reverse-compile ES5-targeted published libraries upwards to ES2017 syntax again for improved bundle size:

    - https://jasonformat.com/enabling-modern-js-on-npm/

    - https://web.dev/publish-modern-javascript/

  • GitHub repo rust

    Empowering everyone to build reliable and efficient software.

  • SonarLint

    Deliver Cleaner and Safer Code - Right in Your IDE of Choice!. SonarLint is a free and open source IDE extension that identifies and catches bugs and vulnerabilities as you code, directly in the IDE. Install from your favorite IDE marketplace today.

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