Oxlint – written in Rust – 50-100 Times Faster than ESLint

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

InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  • oxc

    ⚓ A collection of JavaScript tools written in Rust.

  • If I understand it right, we have 3 large projects that aim to replace most of JS tools on their own: Bun[0], Oxc[1] and Biome[2]. Bun's package manager is great, Biome formatter recently reached 96% compatibility with Prettier, and now Oxlint is apparently good enough to replace ESLint at Shopify. Exciting times ahead.

    But it's giving the impression that these projects perhaps could be better off collaborating instead of each of them aiming to eat the world on their own?

    [0] https://bun.sh/

    [1] https://oxc-project.github.io/

    [2] https://biomejs.dev/

  • biome

    A toolchain for web projects, aimed to provide functionalities to maintain them. Biome offers formatter and linter, usable via CLI and LSP.

  • If I understand it right, we have 3 large projects that aim to replace most of JS tools on their own: Bun[0], Oxc[1] and Biome[2]. Bun's package manager is great, Biome formatter recently reached 96% compatibility with Prettier, and now Oxlint is apparently good enough to replace ESLint at Shopify. Exciting times ahead.

    But it's giving the impression that these projects perhaps could be better off collaborating instead of each of them aiming to eat the world on their own?

    [0] https://bun.sh/

    [1] https://oxc-project.github.io/

    [2] https://biomejs.dev/

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • bun

    Incredibly fast JavaScript runtime, bundler, test runner, and package manager – all in one

  • If I understand it right, we have 3 large projects that aim to replace most of JS tools on their own: Bun[0], Oxc[1] and Biome[2]. Bun's package manager is great, Biome formatter recently reached 96% compatibility with Prettier, and now Oxlint is apparently good enough to replace ESLint at Shopify. Exciting times ahead.

    But it's giving the impression that these projects perhaps could be better off collaborating instead of each of them aiming to eat the world on their own?

    [0] https://bun.sh/

    [1] https://oxc-project.github.io/

    [2] https://biomejs.dev/

  • typescript-eslint

    :sparkles: Monorepo for all the tooling which enables ESLint to support TypeScript

  • > Only lint files that have changed? How hard that is?

    Quite hard, especially since type-aware rules from e.g. https://typescript-eslint.io/ mean that changing the type of a variable in file A can break your code in file B, even if file B hasn't changed.

  • genemichaels

    Even formats macros

  • Python and JavaScript have similarly good formatters (as long as your idiot colleagues don't insist on using yapf instead of Black, despite yapf producing non-deterministic output!). In fact I would say Rust is probably behind Prettier in terms of auto formatting. The rustfmt output is less pretty (subjective I know), the devs have made several strange decisions and it seems to be semi-abandoned (maybe partly because the devs were ... shall we say not as friendly and welcoming as the Rust community likes to bleat on about).

    There are a couple of alternative formatters:

    * https://github.com/andrewbaxter/genemichaels

  • prettier-plugin-rust

    Prettier Rust is an opinionated code formatter that autocorrects bad syntax.

  • cargo-release

    Cargo subcommand `release`: everything about releasing a rust crate.

  • You should combine step 1 and 2 with CI. Just tag a version in your git, push to remote and have CI auto build a release for you.

    Use github actions or other setup for other backends.

    Or go nuts with cargo-release.

    https://github.com/crate-ci/cargo-release

    https://github.com/cargo-bins/release-pr

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
  • release-pr

    GitHub Action to create a release PR using cargo-release — soft deprecated: try release-plz instead!

  • You should combine step 1 and 2 with CI. Just tag a version in your git, push to remote and have CI auto build a release for you.

    Use github actions or other setup for other backends.

    Or go nuts with cargo-release.

    https://github.com/crate-ci/cargo-release

    https://github.com/cargo-bins/release-pr

  • dprint

    Pluggable and configurable code formatting platform written in Rust.

  • deno

    A modern runtime for JavaScript and TypeScript.

  • TypeScript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

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

  • Rome v12.1: a Rust-based linter formatter for TypeScript, JSX and JSON

    7 projects | news.ycombinator.com | 13 May 2023
  • Is there an extension for forcing a code style?

    1 project | /r/vscode | 30 Mar 2023
  • Ask HN: Alternatives to Prettier?

    2 projects | news.ycombinator.com | 31 May 2022
  • dprint – Code Formatter

    1 project | news.ycombinator.com | 28 Apr 2022
  • Announcing Rome Formatter

    1 project | /r/javascript | 6 Apr 2022