Biome is a formatter and linter for web languages: JavaScript, TypeScript, CSS, HTML, JSON, and GraphQL.

Version 2 adds type-aware lint rules and it is the first TypeScript linter that does not require tsc. Other new features include:

  • Monorepo support
  • GritQL Plugins
  • Revamped, configurable import sorting
  • Linter domains
  • Bulk suppressions
  • Analyzer assists
  • Many new lint rules
  • sum_yung_gai@lemm.ee
    link
    fedilink
    arrow-up
    2
    ·
    2 days ago

    What is the use case for linting typescript where tsc is unavailable? To avoid tsc compilation time if possible?

    • arendjr@programming.devOP
      link
      fedilink
      arrow-up
      4
      ·
      2 days ago

      tsc is (very) slow and there are also no convenient ways to interact with it from Rust.

      So it saves a lot development and CI time to roll our own. The downside is that our inference still isn’t as good as tsc of course, but we’re hopeful the community can help us get very close at least.

      • sum_yung_gai@lemm.ee
        link
        fedilink
        arrow-up
        4
        ·
        2 days ago

        Makes sense. Reminds me of running ruff before the (very) slow type checker on my python projects.