{"library":"rollup-plugin-circular-dependencies","title":"rollup-plugin-circular-dependencies","description":"A Rollup/Vite plugin for detecting and reporting circular dependencies using Tarjan's algorithm. Current stable version is 2.0.1, released February 2026. Replaces Rollup's built-in circular dependency warnings with configurable output, including pretty-printed console logs, JSON file reports, per-cycle filtering, lifecycle hooks, and detection metrics. Supports Rollup 3 and 4, Node.js >=20.12.0, ships TypeScript types, and works with both ESM and CJS. Differentiator: rich formatting, lifecycle hooks, and watch mode support not found in similar plugins like rollup-plugin-cycle.","language":"javascript","status":"active","last_verified":"Mon Apr 27","install":{"commands":["npm install rollup-plugin-circular-dependencies"],"cli":null},"imports":["import { circularDependencies } from 'rollup-plugin-circular-dependencies'","import { DefaultFormatters } from 'rollup-plugin-circular-dependencies'","import type { Options } from 'rollup-plugin-circular-dependencies'"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"// rollup.config.js\nimport { circularDependencies } from 'rollup-plugin-circular-dependencies';\nimport json from '@rollup/plugin-json';\n\nexport default {\n  input: 'src/index.js',\n  output: {\n    dir: 'dist',\n    format: 'esm'\n  },\n  plugins: [\n    json(),\n    circularDependencies({\n      throwOnError: false,\n      formatOut: (data) => JSON.stringify(data, null, 2),\n      onDetected: (data) => {\n        console.log(`Detected ${data.cycles.length} cycles`);\n      }\n    })\n  ]\n};","lang":"javascript","description":"Rollup configuration using the plugin with options: warning mode, custom JSON formatter, and lifecycle hook.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":null}