{"id":22743,"library":"vite-plugin-mock-replace","title":"vite-plugin-mock-replace","description":"Vite plugin (0.0.3, early development) that replaces source files with mock implementations during testing (vitest, Storybook). Supports extension-based (my-file.ts → my-file.mock.ts) and directory-based (__mocks__/my-file.ts) overrides. Requires vite >=5.0.0 and vitest >=1.0.0 as peer dependencies. Lightweight alternative to manual module mocking with zero-config auto-resolution.","status":"active","version":"0.0.3","language":"javascript","source_language":"en","source_url":"https://github.com/jarlef/vite-plugin-mock-replace","tags":["javascript","vite","vitest","testing","mock","replace","typescript"],"install":[{"cmd":"npm install vite-plugin-mock-replace","lang":"bash","label":"npm"},{"cmd":"yarn add vite-plugin-mock-replace","lang":"bash","label":"yarn"},{"cmd":"pnpm add vite-plugin-mock-replace","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"peer dependency: plugin runs inside Vite's build/dev pipeline","package":"vite","optional":false},{"reason":"peer dependency: plugin is designed for testing with vitest","package":"vitest","optional":false}],"imports":[{"note":"ESM-only package; CJS require will fail at runtime.","wrong":"const mockReplace = require('vite-plugin-mock-replace')","symbol":"default","correct":"import mockReplace from 'vite-plugin-mock-replace'"},{"note":"Package exports default only – named import not available.","wrong":"import { mockReplace } from 'vite-plugin-mock-replace'","symbol":"mockReplace","correct":"import mockReplace from 'vite-plugin-mock-replace'"},{"note":"Types are included but no named type export from this package; use Vite's Plugin type.","wrong":"import { Plugin } from 'vite-plugin-mock-replace'","symbol":"Plugin type","correct":"import type { Plugin } from 'vite'"}],"quickstart":{"code":"// vitest.config.ts\nimport { defineConfig } from 'vitest/config';\nimport react from '@vitejs/plugin-react';\nimport mockReplace from 'vite-plugin-mock-replace';\n\nexport default defineConfig({\n  plugins: [\n    react(),\n    mockReplace(), // auto-replaces files with .mock.ts or __mocks__/\n  ],\n  test: {\n    globals: true,\n    environment: 'node',\n  },\n});","lang":"typescript","description":"Minimal vitest configuration enabling mock file replacement for testing."},"warnings":[{"fix":"Upgrade Vite to >=5.0.0 and Vitest to >=1.0.0.","message":"Requires Vite >=5.0.0 and Vitest >=1.0.0; older versions will fail to load the plugin.","severity":"breaking","affected_versions":"<0.0.3"},{"fix":"Ensure mock files are adjacent to source with .mock suffix or inside __mocks__ folder.","message":"Plugin modifies Vite's resolve logic; mock files must follow naming convention exactly (e.g., .mock.ts, not .spec.ts).","severity":"gotcha","affected_versions":">=0.0.1"},{"fix":"Use only with vitest or Vite-based environments (Storybook).","message":"Only works during build/serve with Vite; not for Jest or other test runners.","severity":"gotcha","affected_versions":">=0.0.1"}],"env_vars":null,"search_vec":"'/my-file.ts':33 '0.0.3':8 '1.0.0':40 '5.0.0':37 'altern':45 'auto':55 'auto-resolut':54 'base':25,31 'config':53 'depend':43 'develop':10 'directori':30 'directory-bas':29 'earli':9 'extens':24 'extension-bas':23 'file':14 'implement':17 'javascript':57 'lightweight':44 'manual':47 'mock':4,16,32,49,61 'modul':48 'my-file.mock.ts':27 'my-file.ts':26 'overrid':34 'peer':42 'plugin':3,7 'replac':5,12,62 'requir':35 'resolut':56 'sourc':13 'storybook':21 'support':22 'test':19,60 'typescript':63 'vite':2,6,36,58 'vite-plugin-mock-replac':1 'vitest':20,39,59 'zero':52 'zero-config':51","created_at":"2026-04-27T17:06:47.492796+00:00","updated_at":"2026-04-27T17:06:47.492796+00:00","problems":[{"fix":"npm install -D vite-plugin-mock-replace","cause":"Package was not installed (dev dependency missing).","error":"Cannot find module 'vite-plugin-mock-replace'"},{"fix":"Update Vite: npm install vite@latest","cause":"Using an older Vite version (<5.0.0).","error":"Error: The plugin 'vite-plugin-mock-replace' requires Vite >=5.0.0"},{"fix":"Change to: import mockReplace from 'vite-plugin-mock-replace'","cause":"Incorrect import: using named import instead of default.","error":"TypeError: mockReplace is not a function"}],"ecosystem":"npm","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":"","cli_version":null,"type":"library","homepage":null,"github":"https://github.com/jarlef/vite-plugin-mock-replace","docs":null,"changelog":null,"pypi":null,"npm":"https://www.npmjs.com/package/vite-plugin-mock-replace","openapi_spec":null,"status_page":null,"smithery":null,"categories":["testing"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-06-18","next_check":"2026-07-26","install_tag":null}}