Skip to content

介绍

tsdown 是优雅的库构建工具。它以简洁和高效为设计理念,为您的 TypeScript 和 JavaScript 库提供无缝且高效的打包方式。无论您正在构建小型工具库还是复杂的功能库,tsdown 都能让您专注于核心代码开发,同时以优雅的方式处理打包流程。

为什么选择 tsdown?

tsdown 基于 Rolldown 构建,这是一款采用 Rust 编写的前沿打包工具。尽管 Rolldown 本身就是功能强大的通用型工具,但 tsdown 更进一步,为库开发者提供了完整的开箱即用解决方案

tsdown 与 Rolldown 的主要区别

  • 简化的配置tsdown 提供了针对库开发的合理默认配置,减少了复杂配置的需求。它提供了简洁的使用体验,让您专注于代码,而不是打包过程。
  • 面向库的特性:与作为通用打包器的 Rolldown 不同,tsdown 专为构建库而优化。它包括自动生成 TypeScript 声明文件和支持多种输出格式等功能。
  • 前瞻准备:作为 Rolldown 的官方项目tsdown 深度融入于其生态系统体系,并将随着 Rolldown 的发展不断演进。依托 Rolldown 的技术前沿突破,tsdown 致力于探索库开发的新可能性。此外,tsdown 被定位为 Rolldown Vite 库模式 的核心基座,为库开发者提供长期稳定、功能完备的开发体验。

插件生态系统

tsdown 支持整个 Rolldown 插件生态系统,使您可以轻松扩展和自定义构建过程。此外,它还兼容大多数 Rollup 插件,为您提供了丰富的现有工具库。

有关更多详细信息,请参阅 插件 文档。

它能打包什么?

tsdown 专为现代库开发设计,能够处理所有必要的任务:

  • TypeScript 和 JavaScript:无缝打包 .ts.js 文件,支持现代语法和特性。
  • TypeScript 声明文件:自动为您的库生成声明文件(.d.ts)。
  • 多种输出格式:生成 esmcjsiife 格式的包,确保兼容不同的运行环境。
  • 资源文件:支持包含和处理非代码资源文件,如 .json.wasm

通过内置的除屑优化、压缩和源映射支持,tsdown 确保您的库为生产环境做好了充分优化。

快速且优雅

tsdown 的设计目标是快速。借助 Rolldown 基于 Rust 的高性能,即使对于大型项目,它也能提供极快的构建速度。同时,它也非常优雅——提供了一个干净直观的配置系统,最大限度地减少样板代码并提升生产力。

快速上手

准备好开始了吗?查阅 快速上手 指南,构建您的第一个 tsdown 项目。

致谢

tsdown 是站在巨人肩膀上的成果。它由 Rolldown 提供支持,并受到 tsup 等工具的启发。特别感谢开源社区和贡献者们,让这样的项目成为可能。

Released under the MIT License.