Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Switch from Prettier & ESLint to Biome #1267

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

yeoffrey
Copy link
Contributor

TD;LR

Prettier and ESLint are slow and overly complicated for configuring formatting and linting. Biome offers a unified, simple tool for linting, formatting and organizing imports that outperforms Prettier and ESLint in speed as well.

Every rule that is enabled through the formatter and linter is one less thing for us to review in a PR, and makes our jobs easier.

Motivations

The linting rules in this project are looser than they should be. Superstruct requires a high-degree of reliability and that should be reflected in how we write the code in this package. Making the rules stricter benefits us from a development perspective so we don't write dangerous TypeScript, but also it's users to avoid unforeseen bugs.

Why Biome over ESLint and Prettier

Basically, just simplicity. One configuration to rule them all. Removes multiple development dependencies, is way faster... See more here.

Next Steps

This PR contains a Biome configuration that nearly matches our old configuration (except for some formatting in utils.ts). We should, one by one, re-enable these rules in separate PRs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant