# father

> A bundless/bundle build tool

Latest version **4.6.38** (published 2026-09-16) · MIT license · 0 weekly downloads

## Install

```sh
npm install father
pnpm add father
yarn add father
bun add father
```

Provides the command `father`.

## Health

**Score 70/100 (B)** — status: active.

Positive: has types; no vulnerabilities; has provenance; recently updated; high maintenance score; high quality score.

Warnings: low downloads; no esm support.

## Facts

| | |
|---|---|
| Version | 4.6.38 |
| Published | 2026-09-16 |
| First published | 2014-03-19 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | CommonJS |
| Dependencies | 23 |
| Unpacked size | 230 KB |
| Known vulnerabilities | 0 (+4 in 2 direct dependencies) |
| Install scripts | no |
| Provenance | attested (GitHub Actions) |
| GitHub stars | 2242 |
| Maintainers | sorrycc, stormslowly, popomore, peachscript, zombiej, chenshuai2144, yifankakaxi, zoomdong07 |

## Links

- npm: https://www.npmjs.com/package/father
- Repository: https://github.com/umijs/father
- Homepage: https://github.com/umijs/father#readme
- Issues: https://github.com/umijs/father/issues
- npm.io page: https://npm.io/package/father

## Dependencies (23)

- [esbuild](https://npm.io/package/esbuild.md) 0.17.19
- [piscina](https://npm.io/package/piscina.md) ^4.6.1
- [fast-glob](https://npm.io/package/fast-glob.md) 3.2.12
- [minimatch](https://npm.io/package/minimatch.md) 3.1.2
- [@utoo/pack](https://npm.io/package/@utoo/pack.md) 1.5.18
- [typescript](https://npm.io/package/typescript.md) 5.4.2
- [@umijs/core](https://npm.io/package/@umijs/core.md) ^4.7.18
- [@vercel/ncc](https://npm.io/package/@vercel/ncc.md) 0.33.3
- [@umijs/utils](https://npm.io/package/@umijs/utils.md) ^4.7.18
- [loader-runner](https://npm.io/package/loader-runner.md) 4.2.0
- [tsconfig-paths](https://npm.io/package/tsconfig-paths.md) 4.0.0
- [enhanced-resolve](https://npm.io/package/enhanced-resolve.md) 5.9.3
- [file-system-cache](https://npm.io/package/file-system-cache.md) 2.0.0
- [@umijs/bundler-utils](https://npm.io/package/@umijs/bundler-utils.md) ^4.7.18
- [@umijs/bundler-webpack](https://npm.io/package/@umijs/bundler-webpack.md) ^4.7.18
- [@umijs/babel-preset-umi](https://npm.io/package/@umijs/babel-preset-umi.md) ^4.7.18
- [@microsoft/api-extractor](https://npm.io/package/@microsoft/api-extractor.md) 7.43.7
- [typescript-transform-paths](https://npm.io/package/typescript-transform-paths.md) 3.4.7
- [babel-plugin-module-resolver](https://npm.io/package/babel-plugin-module-resolver.md) 4.1.0
- [babel-plugin-transform-define](https://npm.io/package/babel-plugin-transform-define.md) 2.0.1
- [babel-plugin-styled-components](https://npm.io/package/babel-plugin-styled-components.md) 2.1.4
- [babel-plugin-dynamic-import-node](https://npm.io/package/babel-plugin-dynamic-import-node.md) 2.3.3
- [@umijs/case-sensitive-paths-webpack-plugin](https://npm.io/package/@umijs/case-sensitive-paths-webpack-plugin.md) ^1.0.1

## Recent versions

- 4.6.38 (latest) — 2026-09-16
- 4.6.25-alpha.0 (next) — 2026-07-01
- 4.6.6-canary.1 (canary) — 2025-09-25
- 4.3.8-alpha.0 (test) — 2023-11-28
- 2.30.2-1 (beta) — 2021-02-19
- 4.6.37 — 2026-09-07
- 4.6.36 — 2026-08-13
- 4.6.35 — 2026-08-11
- 4.6.34 — 2026-08-05
- 4.6.33 — 2026-07-31
- 4.6.32 — 2026-07-30
- 4.6.31 — 2026-07-15
- 4.6.30 — 2026-07-13
- 4.6.29 — 2026-07-13
- 4.6.28 — 2026-07-13
- … 281 more at https://npm.io/package/father/versions

## README

# father

[![version](https://badgen.net/npm/v/father)](https://www.npmjs.com/package/father) [![codecov](https://codecov.io/gh/umijs/father/branch/master/graph/badge.svg)](https://codecov.io/gh/umijs/father) [![GitHub Actions status](https://github.com/umijs/father/workflows/CI/badge.svg)](https://github.com/umijs/father)

father 是一款 NPM 包研发工具，能够帮助开发者更高效、高质量地研发 NPM 包、生成构建产物、再完成发布。它主要具备以下特性：

- ⚔️ **双模式构建：** 支持 Bundless 及 Bundle 两种构建模式，ESModule 及 CommonJS 产物使用 Bundless 模式，UMD 产物使用 Bundle 模式
- 🎛 **多构建核心：** Bundle 模式使用 Webpack 作为构建核心，Bundless 模式支持 esbuild、Babel 及 SWC 三种构建核心，可通过配置自由切换
- 🔖 **类型生成：** 无论是源码构建还是依赖预打包，都支持为 TypeScript 模块生成 `.d.ts` 类型定义
- 🚀 **持久缓存：** 所有产物类型均支持持久缓存，二次构建或增量构建只需『嗖』的一下
- 🩺 **项目体检：** 对 NPM 包研发常见误区做检查，让每一次发布都更加稳健
- 🏗 **微生成器：** 为项目追加生成常见的工程化能力，例如使用 jest 编写测试
- 📦 **依赖预打包：** 开箱即用的依赖预打包能力，帮助 Node.js 框架/库提升稳定性、不受上游依赖更新影响（实验性）

访问 [指南](./docs/guide/index.md) 及 [配置项](./docs/config.md) 了解更多。

如果你在寻找旧版 father/father-build 的文档，请切换到 [2.x 分支](https://github.com/umijs/father/tree/2.x)，推荐参考 [升级指南](./docs/guide/upgrading.md) 升级到 father 4 以获得更好的研发体验。

## 贡献指南

查看 [CONTRIBUTING](./CONTRIBUTING.md) 文档。

## License

[MIT](./LICENSE)

---
_Source: https://npm.io/package/father · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
