0-dependency Vue reactivity tracker.
Monitor which components re-render, what triggers the updates, and track reactive dependencies using Vue's built-in debugging hooks (onRenderTriggered
and onRenderTracked
).
In this example, user typing john
caused 28 render events in Login
component trigger.
npm install vue-flow-vis --save-dev
# or
yarn add vue-flow-vis --dev
# or
pnpm install vue-flow-vis --dev
// main.ts
import { createApp } from 'vue'
import App from './App.vue'
import { FlowVisPlugin } from 'vue-flow-vis'
const app = createApp(App)
// Basic usage with default settings
app.use(FlowVisPlugin)
app.mount('#app')
The plugin will automatically start monitoring all your components.
More examples can be found in examples directory.
The plugin accepts a configuration object with the following options:
type FlowVisOptions = {
enabled?: boolean // Enable/disable monitoring (default: true)
logger?: 'console' | 'ui' | 'none' // Logger type (default: 'ui')
excludeComponents?: string[] // Components to exclude from monitoring
includeComponents?: string[] // Only monitor these components (overrides exclude)
logToTable?: boolean // Use console.table for output (default: false)
batchLogs?: boolean // Group console logs by component (default: true)
batchWindow?: number // Delay in ms before flushing batched logs (default: 500)
onRenderTracked?: (data: RenderEventData) => void // Custom callback for tracked events
onRenderTriggered?: (data: RenderEventData) => void // Custom callback for triggered events
customLogger?: Logger // Custom logger implementation (overrides logger option)
}
# Initialize husky hooks and install dependencies
npm run init
# Start watch mode
npm run dev
Feel free to submit github issue here and use appropriate labels (bug-report
/feature-request
).
Check if a similar issue already exists before submitting.
MIT License - see LICENSE file for details