Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat(typescript-migration): Migrate Colorus-js codebase to TypeScript (…
…#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
- Loading branch information