SuperAPI AI 工具集

typescript-libraries

编程与开发

查看项目

更新于 10-15 20:31

技能介绍

用途:指导创建与发布 TypeScript 库。库是被消费者调用的代码,强调小公共面、诚实类型、可预测发布。框架类(IoC、插件、约定)见 typescript-frameworks,领域类型见 typescript-strict。

主要能力:组织 src/index.ts 单一公共 barrel 与 internal 目录;配置 package.json 的 exports(import、types,仅在有 CJS 时加 require)、files 只发布 dist+README+LICENSE、sideEffects:false 支持 tree-shaking;使用 peerDependencies 让宿主(React、Vue、Zod 主版本)由应用选择;SemVer 中公共类型即 API,改签名或删导出为破坏性变更;构建用 tsc 或 tsup/unbuild/tsdown,测试用 Vitest,发布用 Changesets,CI 用 publint/attw 校验。

使用方式:保留仓库已有打包器,不随意替换;tsconfig 开启 strict、declaration、declarationMap,区分 DX 与 build 配置;公共导出写 JSDoc,弃用用 @deprecated 并保留一个主版本;prepack 构建、prepublishOnly 防脏发布;双 CJS/ESM 用独立入口与对应类型,避免 dual package hazard。

适用场景:发布 npm 上的 TS 库、monorepo 子包、类型优先库。

限制与反模式:不 export * from internal,不用 src 作为生产入口,不把 React/Vue 打包进库,不让 types 与 import 指向不同文件,不用 skipLibCheck 掩盖自身 .d.ts 错误,不在 patch 改公共类型,不用 postinstall 下载二进制或改消费者项目。资料未提供具体收费、平台与效果信息。