Changelog
1.4.0
Minor Changes
#80
7bccef0Thanks @santi020k! - # v1.4.0 — API improvements, new optional, and quality-of-life fixesBreaking changes
Unified Node.js requirement to >=24.0.0. All packages in the monorepo now strictly require Node.js 24.0.0 or higher. This ensures compatibility with modern dependency versions (such as
cspellv10) and aligns with the project's long-term maintenance strategy.detectProjectOptions()no longer sets boolean flags onframeworks. Previously, auto-detection would setframeworks.react = true,frameworks.next = true, etc. Passing those values toeslintConfig()would throw aTypeErrorbecause framework configs must be real imports, not booleans.Detected frameworks are now reported via a new
detectedFrameworks: DetectedFrameworkName[]field. Theframeworksobject in the detection result stays empty, so spreadingdetectProjectOptions()intoeslintConfig()is always safe.ts// Before (would throw) const opts = detectProjectOptions(); eslintConfig(opts); // ❌ // opts.frameworks.next === true → TypeError inside eslintConfig() // After (safe) const opts = detectProjectOptions(); // opts.detectedFrameworks → ['next', 'react'] (informational) // opts.frameworks → {} (safe to spread) eslintConfig(opts); // ✅New features
Extension.BestPracticesoptional config — adds four quality rules with no extra dependencies:no-console(warn) — catches leftover debug outputno-alert(error) — disallows browseralert/confirm/promptcomplexity(warn, max 10) — flags overly complex functionsmax-depth(warn, max 4) — flags deeply nested blocks
tseslintConfig({ extensions: [Extension.BestPractices] });Category barrel exports for
@santi020k/eslint-config-optionals— five new sub-path exports let you import a whole category at once:ts// also: /extensions /tools /librariesNextModeauto-detection —detectProjectOptions()now detects App Router vs Pages Router by checking for anapp/orsrc/app/directory, sooptions.nextModeis set automatically.DetectedFrameworkNametype — new exported union type listing all framework names thatdetectProjectOptions()can detect. Useful for display logic or tooling built on top of detection.Improvements
Early
tsconfigRootDirvalidation —createTypescriptConfig()now throws a clear, actionable error at config-creation time if the providedtsconfigRootDirpath does not exist on disk, instead of failing silently at ESLint runtime.CI node version matrix — the build pipeline now runs against Node 24.x to ensure stability across the updated engine requirements.
docs/PHILOSOPHY.md— new document explaining the major design decisions: why hard deps, flat config only, lazy framework loading, rule severity philosophy, and how to extend or override rules.Changelog synchronization — new
sync-docs-changelog.mjsscript to automatically propagate root changelog updates to the documentation site.Bug Fixes
- CLI Scaffolding: Resolved bug where auto-detected frameworks were not correctly included in the generated configuration.
- Rule Set Update: Updated React and Expo collections to reflect rule removals in
eslint-plugin-react-hooks@7recommended configuration. - Tailwind CSS Performance: Fixed
Atomics.wait()timeout errors in monorepos by providing customizable settings in the recommended Tailwind configuration.
Dependency Updates
- External Plugins:
- Updated
@cspell/eslint-plugintov10.0.0(Major). - Updated
typescript-eslinttov8.59.0. - Updated
eslint-plugin-react-hookstov7.1.1. - Updated
eslint-plugin-perfectionisttov5.9.0. - Updated
eslint-plugin-sonarjstov4.0.3. - Updated
tailwindcsstov4.2.4.
- Updated
- Core Tooling:
- Updated
eslinttov10.2.1. - Updated
vitestand@vitest/coverage-v8tov4.1.5. - Internal alignment of
typescriptversion tov5.9.3.
- Updated
Patch Changes
- Updated dependencies [
7bccef0]:- @santi020k/eslint-config-core@1.4.0
- @santi020k/eslint-config-optionals@1.4.0
- @santi020k/eslint-config-typescript@1.4.0
1.3.0
Minor Changes
- #77
450fa19Thanks @santi020k! - Refresh package metadata and supporting docs for thesanti020k.comdomain migration.- Update documentation, canonical URLs, and package links from
santi020k.metosanti020k.com. - Sync npm package metadata so published packages point to the correct license, repository, issues page, and documentation URLs.
- Refresh low-risk ESLint ecosystem and release tooling dependencies.
- Update documentation, canonical URLs, and package links from
Patch Changes
- Updated dependencies [
450fa19]:- @santi020k/eslint-config-angular@1.3.0
- @santi020k/eslint-config-astro@1.3.0
- @santi020k/eslint-config-core@1.3.0
- @santi020k/eslint-config-expo@1.3.0
- @santi020k/eslint-config-nest@1.3.0
- @santi020k/eslint-config-next@1.3.0
- @santi020k/eslint-config-optionals@1.3.0
- @santi020k/eslint-config-qwik@1.3.0
- @santi020k/eslint-config-react@1.3.0
- @santi020k/eslint-config-remix@1.3.0
- @santi020k/eslint-config-solid@1.3.0
- @santi020k/eslint-config-svelte@1.3.0
- @santi020k/eslint-config-typescript@1.3.0
- @santi020k/eslint-config-vue@1.3.0
1.2.0
Minor Changes
#74
c63e902Thanks @santi020k! - # v1.2.0 Release - Documentation OverhaulThis release focuses on a comprehensive update of the documentation site and branding refresh.
Highlights
- VitePress Refresh: Major updates to the documentation structure, including new guides and improved navigation.
- Branding Assets: Added new official logos, icons, and social preview images (opengraph) in
packages/docs/public. - Theme Enhancements: Custom styling and component improvements for a more premium documentation experience.
- Improved Installation Guide: Updated steps for getting started with the latest features.
Patch Changes
- Updated dependencies [
c63e902]:- @santi020k/eslint-config-core@1.2.0
- @santi020k/eslint-config-typescript@1.2.0
- @santi020k/eslint-config-react@1.2.0
- @santi020k/eslint-config-next@1.2.0
- @santi020k/eslint-config-astro@1.2.0
- @santi020k/eslint-config-vue@1.2.0
- @santi020k/eslint-config-svelte@1.2.0
- @santi020k/eslint-config-solid@1.2.0
- @santi020k/eslint-config-angular@1.2.0
- @santi020k/eslint-config-nest@1.2.0
- @santi020k/eslint-config-expo@1.2.0
- @santi020k/eslint-config-qwik@1.2.0
- @santi020k/eslint-config-remix@1.2.0
- @santi020k/eslint-config-optionals@1.2.0
1.1.0
Minor Changes
#70
ef658c1Thanks @santi020k! - # 1.1.0 ReleaseUpdate Highlights
- ESLint 10 Support: Harmonized ESLint version to
^10.1.0across the monorepo and playgrounds. - Security Patches: Fixed vulnerabilities in
lodash,esbuild, andpath-to-regexpvia root overrides. - Solid Playground Fix: Resolved
MODULE_NOT_FOUNDerror in the Solid playground linting process.
- ESLint 10 Support: Harmonized ESLint version to
Patch Changes
- Updated dependencies [
ef658c1]:- @santi020k/eslint-config-core@1.1.0
- @santi020k/eslint-config-typescript@1.1.0
- @santi020k/eslint-config-astro@1.1.0
- @santi020k/eslint-config-vue@1.1.0
- @santi020k/eslint-config-optionals@1.1.0
- @santi020k/eslint-config-qwik@1.1.0
- @santi020k/eslint-config-remix@1.1.0
- @santi020k/eslint-config-angular@1.1.0
- @santi020k/eslint-config-expo@1.1.0
- @santi020k/eslint-config-nest@1.1.0
- @santi020k/eslint-config-next@1.1.0
- @santi020k/eslint-config-react@1.1.0
- @santi020k/eslint-config-solid@1.1.0
- @santi020k/eslint-config-svelte@1.1.0
1.0.0
Minor Changes
#66
6f2f473Thanks @santi020k! - v0.10.0 ReleaseMajor Changes
- Migration to pnpm: Full migration of the monorepo from npm to pnpm workspaces (pnpm v10+). This includes better performance, stricter dependency management, and corepack integration.
- neostandard removal: Removed
neostandarddependency to provide more granular control and modularity in core rules. - Stylistic v4 -> v5: Upgraded to
@stylistic/eslint-pluginversion 5.x for improved formatting rules and TypeScript 5.7+ support. - GraphQL Integration: Added comprehensive support for GraphQL schemas and operations. This includes automated project detection for GraphQL files and specialized linting rules for both schema definitions and operation documents.
- React 19 Support: Updated React detection logic and configurations to support React 19.
Framework Updates
- Qwik & Remix Support: Added comprehensive ESLint configurations and functional playground environments for both Qwik and Remix frameworks.
- Dependency Alignment: Resolved critical
typescript-eslintdependency issues in Astro, Svelte, and Vue packages to ensure proper rule resolution and type safety. - Consistency Refinements: Standardized
disable-type-checkedrule blocks across all framework-specific configurations. - Documentation Overhaul: Major documentation refresh in root
README.mdand VitePress documentation. Added clarity on configuration priority, framework auto-detection, and full-settings examples.
Maintenance
- Corepack Enablement: Added
corepacksupport for automated package manager version management. - Turbo Update: Bumped Turborepo to v2.9+ for faster builds and improved task caching.
- Turbo Optimizations: Configured Turborepo to output in
errors-onlymode witherrorsOnlyShowHashenabled, significantly reducing terminal noise during build and lint tasks. - Integration Test Improvements: Enhanced integration tests to be more robust, including proper
tsconfigRootDirhandling and better React version validation. - Playground Synchronization: Updated all playground packages to maintain parity with the latest framework rules.
#55
d8e4b4aThanks @santi020k! - feat: add standard ESLint configuration and resolve typecheck/hook failuresThis release introduces a new standard configuration in
@santi020k/eslint-config-coreand addresses several technical issues:- Fixed global typecheck failures across the monorepo.
- Resolved pre-commit hook issues with cspell.
- Fixed pre-push hook failures related to publint in the playground package.
- Added missing test coverage scripts and fixed CI build failures.
Patch Changes
- Updated dependencies [
6f2f473,d8e4b4a]:- @santi020k/eslint-config-angular@1.0.0
- @santi020k/eslint-config-astro@1.0.0
- @santi020k/eslint-config-core@1.0.0
- @santi020k/eslint-config-expo@1.0.0
- @santi020k/eslint-config-nest@1.0.0
- @santi020k/eslint-config-next@1.0.0
- @santi020k/eslint-config-optionals@1.0.0
- @santi020k/eslint-config-qwik@0.8.2
- @santi020k/eslint-config-react@1.0.0
- @santi020k/eslint-config-remix@0.8.2
- @santi020k/eslint-config-solid@1.0.0
- @santi020k/eslint-config-svelte@1.0.0
- @santi020k/eslint-config-typescript@1.0.0
- @santi020k/eslint-config-vue@1.0.0
0.8.1
Minor Changes
- 13e8e5a: # Release 0.8.0
- Snippet Fixes: Resolved ESLint parsing errors in virtual TypeScript files within Markdown, Astro, and VitePress code blocks by disabling type-aware rules for those snippets.
- Standalone TS Support: Restored
disableTypeCheckedconfiguration in the TypeScript package, ensuring it remains fully functional and parsing-error-free when used without the main composer. - Documentation Reorganization: Significantly expanded and restructured the documentation site, adding new pages for the Inspector, CLI Tooling, Extensions, and better framework-specific guides.
- Branding Update: Updated the author link label from "Website" to "Author" across all documentation files for improved brand identity.
- Composition Improvements: Refactored the configuration composer to be more robust when handling virtual snippets and framework contracts.
Patch Changes
CI & Workflow Stabilization
- Fixed invalid
actions/setup-nodeversion from@v6to@v4in Release and Docs workflows. - Improved CLI test performance and reliability by refactoring integration tests into fast in-memory unit tests.
- Enabled Turborepo caching in GitHub Actions to significantly reduce PR build times.
- Fixed invalid
Updated dependencies
Updated dependencies [13e8e5a]
- @santi020k/eslint-config-...@0.8.1
- @santi020k/eslint-config-...@0.8.1
- @santi020k/eslint-config-...@0.8.1
- @santi020k/eslint-config-...@0.8.1
- @santi020k/eslint-config-...@0.8.1
- @santi020k/eslint-config-...@0.8.1
- @santi020k/eslint-config-...@0.8.1
- @santi020k/eslint-config-...@0.8.1
- @santi020k/eslint-config-...@0.8.1
- @santi020k/eslint-config-...@0.8.1
- @santi020k/eslint-config-...@0.8.1
- @santi020k/eslint-config-...@0.8.1
0.7.1
Patch Changes
#43
6ceaa37Thanks @santi020k! - Sync README documentation with implemented features (Vue, Playwright).Updated dependencies []:
- @santi020k/eslint-config-astro@0.7.1
- @santi020k/eslint-config-core@0.7.1
- @santi020k/eslint-config-expo@0.7.1
- @santi020k/eslint-config-nest@0.7.1
- @santi020k/eslint-config-next@0.7.1
- @santi020k/eslint-config-optionals@0.7.1
- @santi020k/eslint-config-react@0.7.1
- @santi020k/eslint-config-typescript@0.7.1
- @santi020k/eslint-config-vue@0.7.1
0.7.0
Minor Changes
- #41
d802dfbThanks @santi020k! - Add Playwright support as an optional configuration.
Patch Changes
- Updated dependencies [
d802dfb]:- @santi020k/eslint-config-core@0.5.0
- @santi020k/eslint-config-optionals@0.5.0
0.6.0
Minor Changes
- #39
1c11decThanks @santi020k! - feat(astro): add robust defaults and virtual script support for Astro 5+ feat(core): standardize internal dependencies to workspace:* for better monorepo development docs: add Tailwind CSS v4 compatibility notes and workarounds to README
Patch Changes
#39
1c11decThanks @santi020k! - Fix missing README in published package by ensuring symlinks are correctly handled duringprepackandpostpack, and explicitly includingREADME.mdandCHANGELOG.mdin thefilesarray.#39
1c11decThanks @santi020k! - refactor(optionals): replace eslint-plugin-tailwindcss with eslint-plugin-better-tailwindcss for better Tailwind v4 supportUpdated dependencies [
1c11dec,1c11dec]:- @santi020k/eslint-config-astro@0.3.0
- @santi020k/eslint-config-core@0.4.2
- @santi020k/eslint-config-typescript@0.1.2
- @santi020k/eslint-config-react@0.1.2
- @santi020k/eslint-config-next@0.1.2
- @santi020k/eslint-config-expo@0.2.2
- @santi020k/eslint-config-nest@0.2.2
- @santi020k/eslint-config-vue@0.2.2
- @santi020k/eslint-config-optionals@0.4.2
0.5.0
Minor Changes
- #36
85d6a5eThanks @santi020k! - feat(astro): add robust defaults and virtual script support for Astro 5+ feat(core): standardize internal dependencies to workspace:* for better monorepo development docs: add Tailwind CSS v4 compatibility notes and workarounds to README
Patch Changes
#36
85d6a5eThanks @santi020k! - refactor(optionals): replace eslint-plugin-tailwindcss with eslint-plugin-better-tailwindcss for better Tailwind v4 supportUpdated dependencies [
85d6a5e,85d6a5e]:- @santi020k/eslint-config-astro@0.2.0
- @santi020k/eslint-config-core@0.4.1
- @santi020k/eslint-config-typescript@0.1.1
- @santi020k/eslint-config-react@0.1.1
- @santi020k/eslint-config-next@0.1.1
- @santi020k/eslint-config-expo@0.2.1
- @santi020k/eslint-config-nest@0.2.1
- @santi020k/eslint-config-vue@0.2.1
- @santi020k/eslint-config-optionals@0.4.1
0.4.0
Minor Changes
- #34
f015876Thanks @santi020k! - feat: add eslint-plugin-sonarjs as optional config chore: remove tailwindcss from playground and test package dependencies docs: update AI Agent skills in README
Patch Changes
- Updated dependencies [
f015876]:- @santi020k/eslint-config-core@0.4.0
- @santi020k/eslint-config-optionals@0.4.0
0.3.0
Minor Changes
- #28
162afdbThanks @santi020k! - feat: addregexpoptional config witheslint-plugin-regexp- New
OptionalOption.Regexpto enable regex linting viaeslint-plugin-regexp - Catches common regex mistakes: exponential backtracking, unnecessary escapes, and optimizable character classes
- Uses recommended rules with selective overrides for smoother adoption
- New
Patch Changes
#27
577abbeThanks @santi020k! - ci: disable Husky git hooks during the release workflow- Added
HUSKY=0environment variable to the release workflow to prevent Git hooks from interfering with the automated release process
- Added
#25
1fb4693Thanks @santi020k! - feat: add GitHub-linked changelogs and automatic GitHub releases with tags- Switched changelog generator to
@changesets/changelog-githubfor richer changelogs with PR links, commit references, and contributor credits - Configured release workflow to create GitHub releases with git tags on publish
- Switched changelog generator to
Updated dependencies [
162afdb,1fb4693]:- @santi020k/eslint-config-core@0.3.0
- @santi020k/eslint-config-optionals@0.3.0
0.2.0
Minor Changes
- feat: add Nest.js, Vue, and Expo ESLint configs with optionals package
- Added
@santi020k/eslint-config-nestwith NestJS-specific linting rules - Added
@santi020k/eslint-config-vuewith Vue 3 linting rules - Added
@santi020k/eslint-config-expowith Expo/React Native linting rules - Added
@santi020k/eslint-config-optionalsfor optional integrations (Tailwind, Vitest, cspell, i18next, MDX, Markdown, Stencil) - Added
ConfigOption.Nest,ConfigOption.Vue, andConfigOption.Expoenum values - Updated PR template with changeset reminder
- Added
Patch Changes
- Updated dependencies
- @santi020k/eslint-config-core@0.2.0
- @santi020k/eslint-config-nest@0.2.0
- @santi020k/eslint-config-vue@0.2.0
- @santi020k/eslint-config-expo@0.2.0
- @santi020k/eslint-config-optionals@0.2.0
0.1.0
Minor Changes
- publish testing
Patch Changes
- Updated dependencies
- @santi020k/eslint-config-typescript@0.1.0
- @santi020k/eslint-config-optionals@0.1.0
- @santi020k/eslint-config-astro@0.1.0
- @santi020k/eslint-config-react@0.1.0
- @santi020k/eslint-config-core@0.1.0
- @santi020k/eslint-config-expo@0.1.0
- @santi020k/eslint-config-nest@0.1.0
- @santi020k/eslint-config-next@0.1.0
- @santi020k/eslint-config-vue@0.1.0
