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

Migrate to Biome and remove ESLint #20

Merged
merged 3 commits into from
Aug 23, 2024

Conversation

supitsdu
Copy link
Owner

This PR migrates the project's linting and formatting setup to Biome and removes ESLint. Prettier is still used for formatting Markdown files (*.md).

Key changes:

  • Set up Biome configuration
  • Removed ESLint configuration and dependencies
  • Kept Prettier configuration for Markdown files

Benefits:

  • Simplifies the linting and formatting setup
  • Biome provides a more modern and streamlined approach
  • Reduces potential conflicts between linting tools

Testing:

  • Ran Biome checks to ensure code style compliance
  • Manually reviewed Markdown files for correct formatting

Additional notes:

  • This PR targets the feat/typescript-migration branch to incorporate the linting and formatting changes alongside the TypeScript migration.

See issue #19 for more information

@supitsdu supitsdu added ✨ Enhancement New feature or request 📦 Dependency Management Managing project dependencies, including updating dependencies or resolving dependency-related issue ⚙️ Configs Related to the project configs setup 💎 Code Quality Improving code style, maintainability, or performance labels Aug 23, 2024
@supitsdu supitsdu changed the base branch from main to feat/typescript-migration August 23, 2024 21:30
@supitsdu supitsdu merged commit 3ee25e4 into feat/typescript-migration Aug 23, 2024
@supitsdu supitsdu deleted the migrate-to-biome branch August 23, 2024 21:34
supitsdu added a commit that referenced this pull request Sep 2, 2024
…#23)

* Migrate codebase to TypeScript - initial conversion and type annotations (#18)

* refact!: remove old js files

* feat!: major refactor and introduction of plugin system

- refactor: restructure file organization for improved clarity and maintainability
- feat: implement plugin system with enhanced TypeScript integration
- refactor!: rename Colorus class to Color
- feat: add defineColor helper function for simplified instance creation
- refactor: rename functions and variables for better readability and maintainability
- feat: expose ColorFormatter, parseColor, and isValidColor for public use
- refactor: separate parsing and serialization logic into distinct modules
- refactor: organize conversion functions into separate files based on color space
- refactor: move grayscale, mix, and invert methods into plugins
- feat: expose a few useful typescript types for public use

* refact!: ensure code structure works with new tests

* chore: update Jest config for TypeScript

* test: add new unit test written in TypeScript

* chore: clean up test files (remove unused comments and variables)

* Migrate to Biome and remove ESLint  (#20)

* chore: upload initial biome config

* chore!: remove old .eslintrc.json config

* lint: update files after running new lint config

* Build System Update for Typescript Migration & Plugin Separation (Issue #19) (#21)

* refact!: remove built-in plugins

Remove built-in plugins for the sake of improving separation of concerns, later we will add them as separate packages.

* chore(tsconfig): upload initial tsconfig.json file

* refact: fix issues reported by the new tsconfig.json

* chore: update deps and configs in package.json

* build: update build config

Automatically generate types declaration file, and use esbuild to generate more optimized JS ESNext bundles.

* refact!: clean and update types

* chore: update NPM ignore config file

* build(config): restruct the build process config

* build(tsconfig): improve tsconfig.json

* build: replace plugin to print bundle size

Because of some bugs with the rollup-plugin-output-size, I've decided to
go with a more simple alternative, the rollup-plugin-bundle-size.

* refact!: Replace Color class with dye function

- Improve type safety
- Refact colorFormatter.ts
- Rewrite unit tests
- Add new helper functions

* docs(CONTRIBUTING): add contributing guidelines

* docs: Add comprehensive guide for working with plugins in Colorus.js

* docs: Update README.md with improved structure and examples

* ci: Add code quality workflow using Biome

* ci: Add NPM CI workflow for testing and building

* ci: Add GitHub Actions Workflows for CI/CD and Dependency Management (#22)

* ci: update lint & format configs

* fix: upload linter fixes

* ci: add the Release workflow

* ci: upload dependabout.yml workflow

* ci: move dependabout.yml to .github/ folder

* chore(linter): update biome.js included files prefs

* chore(scripts): improve package.json scripts

* fix: resolve linting errors reported by Biome

* ci: refact CI workflow for build & test

* ci: refact Code Quality workflow

* ci: fix name of linting script

* chore(package.json): bump version and update description

* refact(type): improve DyeReturns type
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
💎 Code Quality Improving code style, maintainability, or performance ⚙️ Configs Related to the project configs setup 📦 Dependency Management Managing project dependencies, including updating dependencies or resolving dependency-related issue ✨ Enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant