{"id":20162,"library":"jsdoc-webpack-plugin","title":"jsdoc-webpack-plugin","description":"Webpack plugin that runs JSDoc on your bundles, version 0.3.0. Low activity; last release 2016. Generates documentation from webpack bundle files, optionally using JSDoc config or bundle sources. Minimal features: conf path, CWD, preserve temp file, recursive flag. Less maintained than alternatives like 'jsdoc-webpack-plugin' or 'webpack-jsdoc'. Not suitable for modern webpack 5+ without potential compatibility issues.","status":"maintenance","version":"0.3.0","language":"javascript","source_language":"en","source_url":"https://github.com/tfiwm/jsdoc-webpack-plugin","tags":["javascript","jsdoc","webpack"],"install":[{"cmd":"npm install jsdoc-webpack-plugin","lang":"bash","label":"npm"},{"cmd":"yarn add jsdoc-webpack-plugin","lang":"bash","label":"yarn"},{"cmd":"pnpm add jsdoc-webpack-plugin","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Core dependency to generate JSDoc documentation; must be installed separately.","package":"jsdoc","optional":false},{"reason":"Peer dependency; plugin works with webpack 1–3 (may break in 4/5).","package":"webpack","optional":true}],"imports":[{"note":"This package exports a single constructor as default via CommonJS. Named destructuring will get undefined.","wrong":"const { JsDocPlugin } = require('jsdoc-webpack-plugin');","symbol":"JsDocPlugin (default)","correct":"const JsDocPlugin = require('jsdoc-webpack-plugin');"},{"note":"ESM default import works if bundler config allows. Named import fails.","wrong":"import { JsDocPlugin } from 'jsdoc-webpack-plugin';","symbol":"JsDocPlugin (ESM)","correct":"import JsDocPlugin from 'jsdoc-webpack-plugin';"},{"note":"The required value is the constructor, not a namespace object.","wrong":"new JsDocPlugin.JsDocPlugin({ conf: 'jsdoc.conf.json' })","symbol":"Plugin instantiation","correct":"new JsDocPlugin({ conf: 'jsdoc.conf.json' })"}],"quickstart":{"code":"const JsDocPlugin = require('jsdoc-webpack-plugin');\nconst path = require('path');\n\nmodule.exports = {\n  entry: './src/index.js',\n  output: {\n    path: path.resolve(__dirname, 'dist'),\n    filename: 'bundle.js'\n  },\n  plugins: [\n    new JsDocPlugin({\n      conf: 'jsdoc.conf',\n      cwd: '.',\n      preserveTmpFile: false,\n      recursive: false\n    })\n  ]\n};","lang":"javascript","description":"Webpack config adding jsdoc-webpack-plugin to generate JSDoc documentation from bundle files."},"warnings":[{"fix":"Use a maintained plugin like 'webpack-jsdoc' or 'jsdoc-webpack-plugin-v4'.","message":"Plugin uses webpack 1 plugin API internally; incompatible with webpack 4/5 without modification.","severity":"breaking","affected_versions":">=4.0.0"},{"fix":"Pin jsdoc version to known compatible range or migrate to a maintained plugin.","message":"Package has no updates since 2016; dependencies (jsdoc) may have breaking changes.","severity":"deprecated","affected_versions":">=0.1.0"},{"fix":"Experiment with 'jsdoc.conf', 'jsdoc.conf.json', or absolute path.","message":"Option 'conf' expects a file path without .json extension? Documentation unclear; actual behavior may differ.","severity":"gotcha","affected_versions":"0.3.0"},{"fix":"Set preserveTmpFile: true during development, clean manually if needed.","message":"Plugin creates temporary files; may leave artifacts if preserveTmpFile false and jsdoc crashes.","severity":"gotcha","affected_versions":">=0.1.0"}],"env_vars":null,"search_vec":"'0.3.0':14 '2016':19 '5':61 'activ':16 'altern':46 'bundl':12,24,31 'compat':64 'conf':35 'config':29 'cwd':37 'document':21 'featur':34 'file':25,40 'flag':42 'generat':20 'issu':65 'javascript':66 'jsdoc':2,9,28,49,55,67 'jsdoc-webpack-plugin':1,48 'last':17 'less':43 'like':47 'low':15 'maintain':44 'minim':33 'modern':59 'option':26 'path':36 'plugin':4,6,51 'potenti':63 'preserv':38 'recurs':41 'releas':18 'run':8 'sourc':32 'suitabl':57 'temp':39 'use':27 'version':13 'webpack':3,5,23,50,54,60,68 'webpack-jsdoc':53 'without':62","created_at":"2026-04-25T11:21:39.009060+00:00","updated_at":"2026-04-25T11:21:39.009060+00:00","problems":[{"fix":"Use correct require: const JsDocPlugin = require('jsdoc-webpack-plugin');","cause":"Using named import instead of default: const { JsDocPlugin } = require('jsdoc-webpack-plugin');","error":"TypeError: JsDocPlugin is not a constructor"},{"fix":"Install jsdoc: npm install --save-dev jsdoc","cause":"jsdoc is not installed (not a package dependency, only peer).","error":"Error: Cannot find module 'jsdoc'"},{"fix":"Ensure plugin is instantiated correctly: new JsDocPlugin({ conf: '...' }) and webpack version <= 3.","cause":"Plugin options passed incorrectly or webpack version incompatible.","error":"WebpackOptionsValidationError: Invalid configuration object"}],"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/tfiwm/jsdoc-webpack-plugin","docs":null,"changelog":null,"pypi":null,"npm":"https://www.npmjs.com/package/jsdoc-webpack-plugin","openapi_spec":null,"status_page":null,"smithery":null,"categories":["devops"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-06-17","next_check":"2026-07-24","install_tag":null}}