@utoo/pack
Utoo 工具链的高性能构建工具,基于 Turbopack 构建。
@utoo/pack 是 Utoo 构建系统的引擎。它利用 Turbopack 的增量计算能力和 Rust 的性能,提供极速的开发和构建体验。
核心特性
- 极致性能 - 核心打包逻辑基于 Rust 构建
- Turbopack 驱动 - 基于驱动 Next.js Turbopack 的同款引擎
- Webpack 兼容 - 支持复用
webpack.config.js,简化迁移 - 现代 Web 支持 - 原生支持 TypeScript、JSX、CSS Modules、Less、Sass 等
- 可扩展架构 - 支持自定义 loader、插件和灵活配置
- 快速 HMR - 优化的热模块替换,开发时即时更新
继续阅读 快速开始,了解如何创建示例项目并配置入口文件。
支持的功能
@utoo/pack 高度兼容 Webpack 生态,同时提供更优的性能。
| 类别 | 支持情况 |
|---|---|
| Entry | name、import 和 filename 模板 |
| Module Rules | 通过 loader-runner 支持主流 Webpack loader |
| Resolve | 完整支持 alias 和 extensions |
| 样式 | Less、Sass、PostCSS、CSS Modules |
| 优化 | 代码压缩、Tree Shaking、模块合并 |
| 框架 | React (styled-jsx、emotion、styled-components) |
| 工具 | Bundle Analyzer、Tracing Logs |
配置
打包器可通过 utoopack.json、utoopack.config.mjs 或 Node API 配置。
| 选项 | 描述 |
|---|---|
entry | 定义应用入口 |
output | 输出目录、文件命名和静态资源复制 |
module | 自定义 loader 和模块规则 |
styles | Less、Sass、CSS Modules、Emotion、styled-components |
optimization | 压缩、tree shaking、split chunks、import 转换 |
devServer | host、port、HTTPS、HMR、proxy |
define | 构建时变量替换 |
provider | 自动注入模块 |
externals | 从打包中排除特定依赖 |
resolve | alias 和扩展名解析 |
persistentCaching | 跨次构建复用缓存 |
mode | development 或 production |
resolve | 模块解析(alias、extensions) |
module | 自定义 loader 规则 |
optimization | 压缩、tree shaking、chunk 分割等 |
styles | Less、Sass、CSS Modules、Emotion、styled-components |
devServer | 开发服务器(hot、port、host、https) |
stats | 启用构建统计输出 |
详见 配置。
Last updated on