Skip to content

Tracking issue: Replace ESLint and Prettier with Biome #2306

@davidjgoss

Description

@davidjgoss

There is some friction with our current setup for linting:

  • TypeScript-related ESLint parser/plugin packages frequently come into conflict with the typescript dependency itself and slow down upgrade cycles
  • Migrating from ESLint 9.x to 10.x (where support for the legacy config is gone) doesn't bring us any particular benefits and comes with a bunch more dependency headaches
  • ESLint isn't exactly slow, but it's not fast either

We gave Biome a try in cucumber/react-components#485 to good effect. It does configuration in a way that makes sense to me, has zero dependencies, and is very fast.

At this point, it's no more effort (maybe less) to migrate any of our projects to Biome than it is to go through the ESLint 10.x upgrade. So Biome it is, and since it also handles formatting we can do without the additional dependency of Prettier as well.

We'll track the work under this ticket and close it when we're fully migrated to Biome for active Cucumber projects.

(I'm in no way dunking on any of these tools. They're all huge technical and community achievements that have served us very well, they're just not the right trade off here any more.)

Metadata

Metadata

Assignees

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions