mcpField
W
webpack-plugin-recipes

webpack-plugin-recipes

github.com/pproenca开发218122 次安装11 周前更新
代码仓库

关于 webpack-plugin-recipes

面向 webpack 5 插件选型与实践的食谱型 Skill,按问题整理 26 个示例。每个示例包含可运行插件、说明、变体及不适用情形。

主要功能

  1. 0126 个 webpack 5 插件示例
  2. 02六类问题分类
  3. 03完整可运行的插件代码
  4. 04设计说明与变体
  5. 05注明不适用情形

适用场景

  1. 01添加导入或密钥构建检查
  2. 02生成清单或虚拟模块
  3. 03将 webpack 输出交给下游系统
  4. 04学习实用插件模式

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/pproenca/dot-skills --skill webpack-plugin-recipes

安装后在 Claude Code 中输入/webpack-plugin-recipes确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

AGENTS.md
metadata.json
assets/templates/
_template.md
references/
_sections.md
assets-add-cache-busting-query.md
assets-optimize-images.md
assets-pre-compress-gzip-brotli.md
assets-route-by-type.md
assets-skip-empty-chunks.md
dx-build-duration-report.md
dx-diff-changed-chunks.md
dx-notify-on-done.md
dx-open-browser-on-first-build.md
guard-bundle-budget.md
guard-forbidden-imports.md
guard-no-secrets-bundled.md
guard-required-env-vars.md
meta-asset-manifest.md
meta-inject-build-info.md
meta-license-notice.md
meta-sri-manifest.md
transform-banner-with-dynamic-content.md
transform-conditional-polyfill.md
transform-define-from-config.md
transform-replace-library.md
transform-strip-debug-helpers.md
virtual-barrel-from-directory.md
virtual-module-from-memory.md
virtual-routes-from-filesystem.md
virtual-types-from-runtime.md

详细介绍

dot-skills Webpack 5 插件最佳实践

包含 26 个贴近生产场景的 webpack 5 插件的实用指南,按它们解决的问题分类。每个示例都从清晰定义的问题陈述开始(“不使用这个插件,哪些地方会很麻烦”),展示朴素的非插件实现方式,然后提供一个完整可运行的插件(60–150 行),并附上说明、变体以及“何时不应使用”的指导。

本指南是 webpack-plugin-authoring 的配套内容:authoring 讲解如何正确编写任意插件;本指南则讲解针对具体痛点应该编写哪种插件。各示例还会交叉引用所应用的 authoring 规则。

何时使用

遇到以下情况时,请参考这些示例:

  • 团队反复遇到一个“感觉应该用插件解决”的构建时问题(架构规则、预防密钥泄漏、资源整理)
  • 需要将 webpack 输出集成到下游系统(SSR 服务、CDN、监控)
  • 正在考虑编写自己的插件还是采用现有插件——这些示例会展示底层模式,帮助你判断是否合适
  • 从其他打包工具迁移,需要重现框架风格的功能(文件系统路由、虚拟模块)
  • 为新工程师提供 webpack 插件编写入门指导——这些示例提供了真实、端到端的示例

按优先级划分的示例类别

优先级类别影响前缀
1构建时防护措施CRITICALguard-
2构建元数据与清单HIGHmeta-
3虚拟模块与代码生成HIGHvirtual-
4代码转换MEDIUM-HIGHtransform-
5开发者体验MEDIUMdx-
6资源管线MEDIUMassets-

快速参考

1. 构建时防护措施(CRITICAL)
2. 构建元数据与清单(HIGH)
  • meta-inject-build-info — 通过 DefinePlugin 将 __COMMIT__/__BUILD_TIME__ 注入源码,并生成 build-info.json
  • meta-asset-manifest — 生成按 chunk 分组、将逻辑名称映射到哈希文件名的清单
  • meta-license-notice — 遍历模块图(而不是 node_modules/)生成 LICENSES.txt
  • meta-sri-manifest — 为每个资源计算 SHA-384 SRI 哈希,以符合 CSP 要求
3. 虚拟模块与代码生成(HIGH)
4. 代码转换(中高)
5. 开发者体验(中)
6. 资源管线(中)

使用方法

当用户描述 webpack 问题(或请求编写插件)时:

  1. 确定问题类别(防护措施?元数据?代码生成?转换?开发者体验?资源?)
  2. 打开匹配的配方文件——先阅读 Problem 部分,确认它是否适用
  3. 将 Plugin 部分作为可用的起点,并根据项目的具体情况调整
  4. 阅读 How it works,了解每项设计选择背后的原因(其中会交叉引用编写规则)
  5. 查看 Variations,了解常见调整;并查看 When NOT to use,确认是否适用

若要更全面地学习插件编写模式,可配合使用 webpack-plugin-authoring 技能——其中的 44 条规则讲解了此技能中每个配方所用的底层 API。

参考文件

文件描述
references/_sections.md类别定义和影响级别
assets/templates/_template.md编写新配方的模板
metadata.json版本和来源参考

评论

支持 Markdown