/nx-biome

NX plugin to integrate the Biome toolchain.

Primary LanguageTypeScriptMIT LicenseMIT

NX Biome

nx-biome

Nx plugin to use Biome toolchain in your Nx workspace.

Nx peer dependency version Stylelint peer dependency version CI LICENSE npm version npm


🚀 Features

@gitopslovers/nx-biome provides a set of power-ups for Nx to lint, format and analyze your projects with Biome.

  • Executor: Provides some executor to lint, format and analyze your files with Biome.
  • Generators: Helping you to configure your projects.
  • Configuration: Per Project configuration of Biome extending a workspace configuration.
  • Only Affected: Uses Nx to support linting formatting and analyzing only affected projects.
  • Cache: Uses Nx to cache already touched projects.

📦 Installation

using npm

npm i -D @gitopslovers/nx-biome

🛠️ Configuring Biome for a project

To add a Biome configuration to a project you just have to run the @gitopslovers/nx-biome:configuration generator.

nx g @gitopslovers/nx-biome:configuration --project <projectName>

The generator adds a biome.json configuration file at the project root which extends the root biome.json and adds a biome-lint target to the project.

At the first run the generator installs all required dependencies and creates a biome.json file at the workspace root. It also configures the namedInputs for the biome-lint targets.

Examples

Run biome-lint for a project

nx biome-lint {{projectName}}

Run biome-lint for all projects

nx run-many --target=biome-lint

Run biome-lint for affected projects

nx affected --target=biome-lint

📖 Documentation

@gitopslovers/nx-biome:configuration generator

Add Biome configuration to a project.

Usage

Add configuration to a project:

nx g @gitopslovers/nx-biome:configuration --project projectName

Options

Option Value Description
project string The name of the project.

@gitopslovers/nx-biome:biome-lint executor

Run Biome linter on a project.

Target Options can be configured in project.json or when the executor is invoked.

See: https://nx.dev/configuration/projectjson#targets

Options

Option Value Default Description
lintFilePatterns string[] One or more files/dirs/globs to pass directly to Biome's lint() method.