Vite Plugin for API mock dev server.
npm install vite-plugin-mock-dev-serverVite Plugin for API mock dev server.
- ⚡️ Lightweight, Flexible, Fast.
- 🧲 Not injection-based, non-intrusive to client code.
- 💡 ESModule/commonjs.
- 🦾 Typescript.
- 🔥 HMR
- 🏷 Support .[cm]?js / .ts / .json / .json5.
- 📦 Auto import mock file.
- 🎨 Support any lib, like mockjs, or do not use it.
- 📥 Path rule matching, request parameter matching.
- ⚙️ Support Enabled/Disabled any one of the API mock.
- 📀 Supports response body content type such as text/json/buffer/stream.
- ⚖️ Use server.proxy
- 🍕 Support viteConfig.define and env in the mock file.
- ⚓️ Support viteConfig.resolve.alias in the mock file.
- 🌈 Support vite preview mode.
- 📤 Support multipart content-type, mock upload file.
- 📥 Support mock download file.
- ⚜️ Support WebSocket Mock
- 🗂 Support building small independent deployable mock services.
See the documentation for more details.

`` sh`npm
npm i -D vite-plugin-mock-dev-serveryarn
yarn add vite-plugin-mock-dev-serverpnpm
pnpm add -D vite-plugin-mock-dev-server
vite.config.ts
` ts
import { defineConfig } from 'vite'
import mockDevServerPlugin from 'vite-plugin-mock-dev-server'
export default defineConfig({
plugins: [
mockDevServerPlugin(/ plugin options /),
],
// The fields defined here can also be used in mock.
define: {},
server: {
// plugin will read server.proxy`
proxy: {
'^/api': { target: 'http://example.com' }
}
}
})
The plugin will read the configuration of server.proxy or options.prefix, and enable mock matching for matched URLs.
The plugin will also read the define configuration, which supports direct use in mock files.
By default, write mock data in the mock directory of your project's root directory:
mock/*/.mock.ts :
` ts
import { defineMock } from 'vite-plugin-mock-dev-server'
export default defineMock({
url: '/api/test',
body: { a: 1, b: 2 }
})
``
- vite
- awesome-vite
- rspack-plugin-mock - Rspack and Rsbuild plugin for API mock server
The plugin is licensed under the MIT License
