NPM · 前端 / Node.js / 生态精选

npm 常用包推荐

npm 生态拥有超过 200 万个包。这里精选了 40+ 个经过社区验证的高质量包,涵盖 HTTP 请求、日期处理、状态管理等常用领域,9 大分类 · 社区检验。

9大分类 40+个精选包 社区推荐

HTTP 请求

axios 1.7.x

最流行的 HTTP 客户端,支持浏览器和 Node.js。内置拦截器、请求/响应转换、自动 JSON 解析、取消请求和 CSRF 保护。

npm install axios
请求 拦截器 浏览器
ky 1.4.x

基于 Fetch API 的轻量级 HTTP 客户端,API 更简洁。支持重试、超时、Hook 钩子,Tree-shakable 设计。

npm install ky
轻量 Fetch ESM
got 14.x

Node.js 专用的 HTTP 请求库,功能强大。支持 H2/HTTP/2、Stream、Pagination、Cookie 和丰富的 Hook 机制。

npm install got
Node.js Stream H2
undici 6.x

Node.js 核心 HTTP 库的现代化替代品。性能卓越,支持 HTTP/1.1 管道化、连接池、Mock 和代理。

npm install undici
高性能 底层 Fetch

日期处理

dayjs 1.11.x

2KB 大小的 Moment.js 替代品。API 完全兼容 Moment,支持插件扩展(相对时间、国际化、时区等)。

npm install dayjs
轻量 插件 国际化
date-fns 3.x

函数式日期工具库,200+ 纯函数按需导入。支持 Tree Shaking,TypeScript 类型完善,不可变数据。

npm install date-fns
函数式 Tree-shaking TypeScript
luxon 3.x

Moment 团队的新一代日期库。不可变 API,原生支持时区(Intl),精确的 Duration/Interval 运算。

npm install luxon
时区 不可变 Intl

状态管理

zustand 4.x

极简的 React 状态管理库。无需 Provider,Hooks 优先,支持 Middleware(Immer/Persist/Devtools)。

npm install zustand
React 轻量 Hooks
pinia 2.x

Vue 3 官方推荐的状态管理库。TypeScript 优先,支持 Devtools、Composition API、模块化热替换。

npm install pinia
Vue TypeScript Devtools
valtio 1.x

基于 Proxy 的 React/vanilla 状态管理。操作如普通对象,自动追踪依赖,支持 computed 和 subscribe。

npm install valtio
Proxy 自动追踪 轻量
jotai 2.x

原子状态管理,灵感来自 Recoil。极简 API,支持衍生 atom、异步 atom、不依赖 Provider。

npm install jotai
原子 React 异步

UI 框架

vue 3.4.x

渐进式 JavaScript 框架。Composition API、Teleport、Suspense 等现代特性,学习曲线平缓,生态成熟。

npm create vue@latest
渐进式 Composition API SFC
react 18.x

声明式 UI 库。Server Components、Suspense、Concurrent Mode 推动前端架构演进,生态最庞大。

npm create vite@latest -- --template react
声明式 组件化 React Server
svelte 4.x

编译时框架,无需虚拟 DOM。代码量少、性能高、内置动画和过渡系统,上手简单。

npm create svelte@latest
编译时 无 VDOM 轻量
solid 1.x

精细粒度响应式框架。无虚拟 DOM,使用 Signal/Effect/Memo 实现精准更新,性能极致。

npm create vite@latest -- --template solid
Signal 无 VDOM 高性能

构建工具

vite 5.x

下一代前端工具链。基于 ESM 的极速开发服务器,Rollup 生产构建,支持 React/Vue/Svelte 等框架。

npm create vite@latest
ESM HMR Rollup
esbuild 0.20.x

基于 Go 的超快打包器。比 Webpack 快 10-100 倍,支持 JS/TS/CSS 打包和压缩,常被 Vite/Rollup 作为底层。

npm install esbuild
Go 极速 底层
swc 1.x

基于 Rust 的 JS/TS 编译器。Babel 的替代者,性能提升 20 倍以上,支持转译、打包和压缩。

npm install @swc/core
Rust 编译器 Babel 替代
turbopack alpha

Vercel 开发的 Rust 增量打包器,Next.js 的默认打包器。增量计算实现毫秒级 HMR 和快速构建。

# Next.js 内置,无需单独安装
Rust 增量 Next.js

代码质量

eslint 9.x

JavaScript/TypeScript 静态代码分析工具。支持 Flat Config 新配置格式,插件生态丰富,团队规范必备。

npm install eslint --save-dev
Lint 静态分析 规范
prettier 3.x

有主见的代码格式化器。支持 JS/TS/CSS/JSON/Markdown 等多种语言,与 ESLint 配合实现"Lint + Format"。

npm install prettier --save-dev
格式化 多语言 零配置
husky 9.x

Git Hooks 管理工具。在 commit 或 push 前自动运行 Lint/Test,防止坏代码进入仓库。

npm install husky --save-dev
Git Hooks 自动化 CI
lint-staged 15.x

仅对 Git 暂存区的文件运行 Lint/Format。配合 Husky 使用,大幅缩短提交前检查时间。

npm install lint-staged --save-dev
暂存区 效率 增量

测试

vitest 1.x

基于 Vite 的下一代测试框架。兼容 Jest API,原生 ESM/TypeScript,HMR 热更新测试,快如闪电。

npm install vitest --save-dev
Vite HMR Jest 兼容
playwright 1.x

微软开发的端到端测试框架。支持 Chromium/Firefox/WebKit 三大引擎,自动等待、网络拦截、移动端模拟。

npm install @playwright/test --save-dev
E2E 跨浏览器 自动等待
cypress 13.x

开发者友好的 E2E 测试工具。实时重载、时间旅行调试、网络请求拦截、组件测试集成。

npm install cypress --save-dev
E2E 时间旅行 组件测试
@testing-library 14.x

以用户行为为中心的测试工具集。支持 React/Vue/Angular/Svelte,鼓励测试行为而非实现细节。

npm install @testing-library/react --save-dev
行为测试 React Vue

工具库

lodash-es 4.x

Lodash 的 ESM 版本,支持 Tree Shaking。提供 300+ 工具函数:深拷贝、合并、去重、节流防抖等。

npm install lodash-es
ESM 工具函数 Tree-shaking
zod 3.x

TypeScript 优先的模式声明与验证库。静态类型推断、链式 API、自定义错误信息,运行时类型安全。

npm install zod
验证 TypeScript 模式
uuid 9.x

UUID 生成器。支持 v1/v4/v5/v7 版本,支持 Crypto API(安全随机),浏览器和 Node.js 通用。

npm install uuid
UUID 唯一 ID Crypto
nanoid 5.x

超轻量唯一 ID 生成器(130 bytes)。比 UUID 快 60%,URL 友好,支持自定义字母表。

npm install nanoid
轻量 快速 URL 友好
clsx 2.x

条件性 className 拼接工具。200 bytes,支持字符串/对象/数组/嵌套,比 classnames 快 2 倍。

npm install clsx
轻量 条件 CSS 快速

安全

helmet 7.x

Express/Node.js 安全中间件。设置 15+ HTTP 安全头(CSP、HSTS、X-Frame-Options 等),防御常见 Web 攻击。

npm install helmet
Express 安全头 中间件
csrf-token 1.x

Express CSRF 保护中间件。生成和验证 CSRF Token,防御跨站请求伪造攻击。需配合 session 使用。

npm install csrf-token
CSRF 安全 Token
express-rate-limit 7.x

Express 速率限制中间件。支持 Memory/Redis/MongoDB 存储,自定义窗口和限制策略。

npm install express-rate-limit
限流 Express 中间件

不只推荐包,更要会选包

成熟项目选 npm 包,需要同时看维护活跃度、体积、类型支持、Tree Shaking、许可证、团队熟悉度和替代成本。

维护活跃度

看最近提交、Issue 响应、发版频率、核心维护者数量;长期停更的包要谨慎。

体积与 Tree Shaking

优先 ESM、支持按需导入、避免把重量级工具库引入首屏。

类型支持

TypeScript 项目优先自带类型定义的包,减少 @types 与运行时不一致。

许可证与安全

商业项目关注 MIT/Apache-2.0 等许可,CI 中接入 audit 和漏洞扫描。

新增常用分类

react-hook-form表单

React 高性能表单库,配合 zod/yup 做类型安全校验。

npm i react-hook-form zod
React表单
vee-validateVue

Vue 表单校验方案,适合中后台复杂表单。

npm i vee-validate yup
Vue校验
echarts图表

国内项目常用可视化库,图表类型丰富,适合业务报表。

npm i echarts
图表报表
gsap动画

专业动画库,复杂时间轴、滚动动画、微交互表现稳定。

npm i gsap
动画交互
i18next国际化

框架无关 i18n 方案,React/Vue/Node 都有成熟集成。

npm i i18next
i18n多语言
xlsx文件

Excel 导入导出常用库,注意大文件解析建议 Web Worker。

npm i xlsx file-saver
Excel导出
markdown-itMarkdown

可扩展 Markdown 解析器,插件生态好,适合文档/博客。

npm i markdown-it
Markdown文档
monaco-editor编辑器

VS Code 同源编辑器,适合在线 IDE、SQL 编辑器、配置中心。

npm i monaco-editor
EditorIDE

同类包怎么选

axios vs ky

axios 生态成熟、拦截器强;ky 更轻、Fetch 原生体验好。中后台优先 axios,轻量前台可选 ky。

dayjs vs date-fns

dayjs API 接近 moment,迁移成本低;date-fns 函数式、Tree Shaking 更细。

zod vs yup

zod 类型推导强,TS 项目体验好;yup 与老表单生态结合多。

vitest vs jest

Vite 项目优先 vitest,老项目和生态插件依赖多时 jest 仍稳。

依赖治理清单

  • 锁定 lockfile,CI 禁止未审查的 lock 变更。
  • 每月审计高危漏洞,优先升级运行时依赖。
  • 删除 90 天未使用依赖,避免供应链攻击面膨胀。
  • 核心依赖升级先灰度,记录破坏性变更。

过时/高风险依赖处理策略

CSRF 包不要盲目选

部分老中间件长期不维护,优先理解 SameSite Cookie + 双提交 Token + 服务端校验的组合方案。

大包先评估体积

图表、编辑器、Excel 解析类库通常很重,建议异步加载并分析 bundle。

供应链安全

对安装脚本、低下载量、突然换维护者的包保持警惕,CI 中开启 npm audit / osv-scanner。