Repository navigation
v8.0.0
Release v8.0.0 (2025-09-14)
Features
- Add dual package support with CommonJS and ESM builds using tsup (#23 by @sectsect)
- Migrate test framework from Jest to Vitest with v8 coverage provider
- Add comprehensive dual package testing to verify both module formats
- Add TypeScript target ES2023 support for Node.js 20+
- Add new test commands:
test:watch,test:ui,type-check:watch
Bug Fixes
- Fix security vulnerabilities in dependencies
- Fix TypeScript compilation errors with import.meta usage in tests
- Fix tsup build configuration to use default export
- Fix npm install hooks by moving build step from prepare to prepublishOnly
- Add lcov reporter for codecov compatibility
Refactor / Maintenance
- Update TypeScript target from ES2020 to ES2023 for modern Node.js support
- Restore Node.js v20.x support (was temporarily bumped to v21+)
- Improve test descriptions for better clarity and readability
- Add Vitest ESLint plugin for test file linting
- Update ESLint configuration to include test directories
- Disable TypeScript incremental compilation to prevent DTS build conflicts
Documentation
- Add dual package support documentation to README with usage examples
- Add ES Modules and TypeScript usage examples
- Update CLAUDE.md with Vitest migration and build system documentation
- Fix code examples and improve feature descriptions in README
- Add Claude Code guidance file for development workflow
CI/Build
- Add missing build step before running tests in CI
- Fix workflow permissions for GitHub Actions security compliance
- Update coverage configuration for Vitest
- Remove Jest dependencies and configuration files
Dependencies
- Replace Jest with Vitest testing framework
- Add tsup for modern dual package builds
- Add @vitest/eslint-plugin for test linting
- Update development dependencies to latest versions
This major release introduces modern dual package support (CommonJS + ESM) with tsup, migrates the testing infrastructure to Vitest, and updates the
build system for better Node.js compatibility. The package now supports both import and require syntax while maintaining backward compatibility.