Skip to main content

๐Ÿ”ด Strict

Use vite.configs.strict when the recommended baseline is already clean and you want tighter policy enforcement.

This preset adds stricter guidance for config migrations, server hardening, client env access, and inline Vitest workspace project definitions.

Flat configโ€‹

import vite from "@typpi/eslint-plugin-vite";

export default [vite.configs.strict];

When to use itโ€‹

  • your team already understands Vite env-prefix policy
  • you want deprecated Vite config aliases caught during review instead of during upgrades
  • you want stronger defaults around server.allowedHosts, CORS, and filesystem exposure
  • you want stronger review pressure around inline Vitest workspace setup
  • you prefer one preset that includes the common baseline and stricter add-ons

Rules in this presetโ€‹

RuleFix
vite/config-require-define-configโ€”
vite/import-meta-glob-literalโ€”
vite/no-dynamic-import-meta-env-accessโ€”
vite/no-empty-env-prefixโ€”
vite/no-mixed-test-and-bench-apisโ€”
vite/no-relative-resolve-aliasโ€”
vite/no-restricted-import-meta-envโ€”
vite/prefer-define-projectโ€”
vite/workspace-unique-project-nameโ€”
vite/no-deprecated-config-optionsโ€”
vite/no-unsafe-server-optionsโ€”
vite/no-import-meta-env-in-configโ€”
vite/no-implicit-config-flagsโ€”
vite/require-inline-project-nameโ€”
vite/no-unsupported-project-optionsโ€”
vite/no-disabled-vitest-typecheckโ€”
vite/no-zero-vitest-timeoutโ€”
vite/no-unsafe-vitest-flagsโ€”
vite/require-vitest-typecheck-tsconfigโ€”
vite/no-disabled-vitest-isolationโ€”
vite/no-zero-vitest-slow-test-thresholdโ€”
vite/no-pass-with-no-testsโ€”
vite/no-vitest-globalsโ€”
vite/no-empty-vitest-projectsโ€”
vite/no-empty-vitest-includeโ€”
vite/no-empty-vitest-project-nameโ€”
vite/no-empty-vitest-excludeโ€”
vite/no-empty-vitest-bench-includeโ€”
vite/no-empty-vitest-bench-excludeโ€”
vite/no-empty-vitest-coverage-includeโ€”
vite/no-empty-vitest-coverage-reporterโ€”
vite/no-empty-vitest-coverage-reports-directoryโ€”
vite/no-empty-vitest-project-excludeโ€”
vite/no-mixed-defineworkspace-and-test-projectsโ€”
vite/require-vitest-sequence-seed-when-shuffleโ€”
vite/no-vitest-watch-in-configโ€”
vite/no-vitest-ui-in-configโ€”
vite/no-vitest-file-parallelism-disabledโ€”
vite/no-vitest-single-thread-pool-by-defaultโ€”
vite/no-vitest-bail-and-retry-conflictโ€”
vite/no-vitest-max-workers-zeroโ€”
vite/no-vitest-min-workers-greater-than-max-workersโ€”
vite/require-vitest-coverage-provider-when-enabledโ€”
vite/require-vitest-coverage-reporter-when-enabledโ€”
vite/require-vitest-coverage-thresholds-when-enabledโ€”
vite/no-vitest-coverage-enabled-false-with-thresholdsโ€”
vite/no-vitest-coverage-all-falseโ€”
vite/no-vitest-coverage-clean-falseโ€”
vite/no-vitest-coverage-skip-full-false-in-strictโ€”
vite/require-vitest-coverage-reports-directoryโ€”
vite/no-vitest-coverage-reporter-text-onlyโ€”
vite/no-vitest-coverage-temp-dir-in-repo-rootโ€”
vite/require-vitest-mock-reset-policyโ€”
vite/prefer-vitest-restore-mocksโ€”
vite/no-vitest-unstub-globals-falseโ€”
vite/no-vitest-unstub-envs-falseโ€”
vite/no-vitest-env-leakage-comboโ€”
vite/require-vitest-environment-match-globsโ€”
vite/no-empty-optimize-deps-includeโ€”
vite/no-empty-optimize-deps-excludeโ€”
vite/no-empty-ssr-noexternalโ€”
vite/no-empty-ssr-externalโ€”
vite/no-empty-worker-pluginsโ€”
vite/no-vitepress-empty-theme-configโ€”
vite/no-vitepress-empty-headโ€”
vite/require-vitepress-title-or-titletemplateโ€”
vite/require-vitepress-clean-urls-explicitโ€”
vite/no-vitest-default-cache-dir-in-monorepoโ€”
vite/no-vitest-timeout-triplet-mismatchโ€”
vite/require-vitest-explicit-environmentโ€”
vite/require-vitest-slow-test-thresholdโ€”
vite/require-vitest-timeout-tripletโ€”